Displaying 11 results from an estimated 11 matches for "llvmtypehandleref".
2008 Sep 08
3
[LLVMdev] Problems when refining type
...eel like it probably shouldn't be
found because the opaque types should be distinct, but I also don't
really understand how it ought to work, so maybe I'm way off base.
-------------
#include "Core.h"
int main()
{
LLVMTypeRef a = LLVMPointerType(LLVMOpaqueType(), 0);
LLVMTypeHandleRef ha = LLVMCreateTypeHandle(a);
LLVMTypeRef atypes[1] = { LLVMResolveTypeHandle(ha) };
LLVMRefineType(LLVMResolveTypeHandle(ha), LLVMStructType(atypes, 1, 0));
LLVMTypeRef b = LLVMPointerType(LLVMOpaqueType(), 0); // assert here
....
}
-------------
The assertion text is:
Assert...
2012 Feb 17
0
[LLVMdev] LLVMTypeHandlerRef is missing?
Hi, I tried to build llvm-py (http://www.mdevan.org/llvm-py/) using LLVM
3.0.1, and I got these errors in a few places:
error: unknown type name ‘LLVMTypeHandleRef’
I did a quick search, and my guess is LLVMTypeHandleRef is not exist in
LLVM 3 anymore:
http://llvm.org/docs/doxygen/html/Core_8h_source.html
So is there any equivalent? Maybe LLVMTypeRef?
Regards,
Andre
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://...
2008 Mar 04
1
[LLVMdev] [PATCH] Prefer to use *.opt ocaml executables as they are more efficient.
I noticed that the ocaml compilation isn't using the .opt
executables if they're available. We might gain a slight
optimization in ocaml compile time by optionally using them
with this patch.
---
autoconf/configure.ac | 18 +++++
configure | 195 ++++++++++++++++++++++++++++++++++++++++++------
2 files changed, 188 insertions(+), 25 deletions(-)
-------------- next part
2008 Mar 04
0
[LLVMdev] [PATCH] Cleanup the c and ocaml binding documentation.
...e types using [refine_type], [lltype]
> values may become
> - * invalid; use [lltypehandle] to resolve this problem. See the
> - * llvm::AbstractTypeHolder] class.
> + * When building recursive types using [LLVMRefineType],
> [LLVMTypeRef] values may become
> + * invalid; use [LLVMTypeHandleRef] to resolve this problem. See the
> + * [llvm::AbstractTypeHolder] class.
> */
> typedef struct LLVMOpaqueTypeHandle *LLVMTypeHandleRef;
>
> @@ -70,12 +70,12 @@ typedef struct LLVMOpaqueBasicBlock
> *LLVMBasicBlockRef;
> typedef struct LLVMOpaqueBuilder *LLVMBuilderRef;
>...
2008 Mar 04
1
[LLVMdev] [PATCH] Cleanup the c and ocaml binding documentation.
---
bindings/ocaml/llvm/llvm.ml | 2 +-
bindings/ocaml/llvm/llvm.mli | 2 +-
bindings/ocaml/llvm/llvm_ocaml.c | 2 +-
include/llvm-c/Core.h | 32 +++++++++++++++++++-------------
4 files changed, 22 insertions(+), 16 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 316a84e85ed2363551149e65a227c8e7c8192624.diff
Type:
2008 Sep 08
0
[LLVMdev] Problems when refining type
On Mon, Sep 8, 2008 at 2:45 PM, Scott Graham <scott.llvm at h4ck3r.net> wrote:
> LLVMTypeRef a = LLVMPointerType(LLVMOpaqueType(), 0);
> LLVMTypeHandleRef ha = LLVMCreateTypeHandle(a);
> LLVMTypeRef atypes[1] = { LLVMResolveTypeHandle(ha) };
> LLVMRefineType(LLVMResolveTypeHandle(ha), LLVMStructType(atypes, 1, 0));
>
> Can anyone explain what I'm doing wrong here?
It looks like a bug; the type map is somehow holding onto a stal...
2008 May 11
0
[LLVMdev] Python bindings available.
...> :) Type handles in particular are very important. You can't form a
>> recursive type without using them, so you can't build any sort of
>> data structure.
>
> On it already. BTW, where can I find a good example of how to use it?
To close the loop with C++ syntax, LLVMTypeHandleRef is really a
pointer to a heap-allocated PATypeHolder, which is discussed here:
http://llvm.org/docs/ProgrammersManual.html#BuildRecType
The file test/Bindings/Ocaml/vmcore.ml contains this fragment:
(* RUN: grep -v {RecursiveTy.*RecursiveTy} < %t.ll
*)
let ty = opaque_type () i...
2008 Apr 10
0
[LLVMdev] LLVMBuilder vs LLVMFoldingBuilder
Dominic Hamon wrote:
> Duncan Sands wrote:
>>> Another option that was discussed in #llvm is to nuke LLVMBuilder
>>> and rename LLVMFoldingBuilder to LLVMBuilder. If this was the case,
>>> I'd argue for a flag in the Builder that could retain the old
>>> non-folding functionality for debugging purposes.
>>>
>>
>> this plan
2008 May 11
2
[LLVMdev] Python bindings available.
Hi Gordon,
Thanks for your comments.
> > Constant.string(value, dont_null_terminate) -- value is a string
> > Constant.struct(consts, packed) -- a struct, consts is a list of
> > other constants, packed is boolean
>
> I did this in Ocaml initially, but found the boolean constants pretty
> confusing to read in code. I kept asking "What's that random true
2008 Apr 11
4
[LLVMdev] LLVMBuilder vs LLVMFoldingBuilder
...Callee, Name));
You should be indenting by two spaces (I think Chris mentioned this).
- DEFINE_SIMPLE_CONVERSION_FUNCTIONS(LLVMFoldingBuilder, LLVMBuilderRef )
+ DEFINE_SIMPLE_CONVERSION_FUNCTIONS(IRBuilder, LLVMBuilderRef )
DEFINE_SIMPLE_CONVERSION_FUNCTIONS(PATypeHolder, LLVMTypeHandleRef )
Please add spaces so that these line up again.
-<p>Well, that was easy :). In practice, we recommend always using
...
+<p>Well, that iss easy :). In practice, we recommend always using
you changed was to iss, I guess you meant "is", though I would prefer "was&qu...
2008 Apr 10
3
[LLVMdev] LLVMBuilder vs LLVMFoldingBuilder
Duncan Sands wrote:
>> Another option that was discussed in #llvm is to nuke LLVMBuilder and
>> rename LLVMFoldingBuilder to LLVMBuilder. If this was the case, I'd
>> argue for a flag in the Builder that could retain the old non-folding
>> functionality for debugging purposes.
>>
>
> this plan sounds good to me. However it's not clear to me how