Displaying 20 results from an estimated 200 matches similar to: "[LLVMdev] Using isa with derived types"
2008 Nov 13
0
[LLVMdev] Using isa with derived types
Zappel-Phillip wrote:
> Hello,
>
> I am writing an optimization pass which optimizes code based on an online
> pointer analysis algorithm and need to detect pointers which are pointing to
> derived types. I have not had any problem identifying pointers in general
> using isa<PointerType>(...), but I can't seem to figure out how I can make
> sure that the pointer is
2008 Dec 08
1
[LLVMdev] Using isa with derived types
I believe I failed to ask the question properly, I am not trying to determine
whether the elements of an array are scalar type. Instead, I want to be able
to iterate over the function's parameters and determine whether a pointer
argument is actually an array being passed which contains scalar values, or
simply a pointer with a single scalar value. In other words, I want to
ignore functions
2013 Aug 11
3
[LLVMdev] Are integer types primitive?
The LLVM docs seem to indicate that integer types are considered primitive,
however looking at the code I see `FirstDerivedTyID = IntegerTyID`,
implying that integers are derived rather than primitive. Should the docs
be updated?
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2016 Mar 29
1
llvm isTokenTy() deprecated?
Hi,
I am trying to process the typeID from a type as follows:
Type *T;
if(T->isTokenTy()){
std::cout << "Token Type";
}
/home/shehbaz/courses/ece1781/project/fslice/plugin/FSlice.cpp:147:14:
error: ‘class llvm::Type’ has no member named ‘isTokenTy’
else if(T->isTokenTy())
^
I am successfully able to do this for all other 20-25 types mentioned here:
2010 Mar 17
1
[LLVMdev] is structtyp a firstclass typ?
Hi LLVM,
In lib/VMCare/Verifier.cpp::visitInstruction, we have such code
1287 // Check that the return value of the instruction is either
void or a legal
1288 // value type.
1289 Assert1(I.getType() == Type::getVoidTy(I.getContext()) ||
1290 I.getType()->isFirstClassType()
1291 || ((isa<CallInst>(I) || isa<InvokeInst>(I))
1292 &&
2010 Mar 15
3
[LLVMdev] [patch] Writing ConstantUnions
Hello,
I noticed a bit of a gap in the current code for unions: a
ConstantUnion cannot be written out to .ll.
Hopefully I'm not stepping on Talin's toes by posting this, it's a
fairly straightforward adaptation of the code for structs just above.
Tim.
--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
--------------
2004 Dec 09
1
[LLVMdev] Question about insert call func with pionter parameter
Hi,
I got a problem when I am trying to insert a call function with pointer arguments.
The function C proto-type is the following,
void stat_func(char *);
>ConstantArray *Cstr = dyn_cast<ConstantArray>(gI->getInitializer());
......
>Function *exFunc = M->getOrInsertFunction("stat_func", Type::VoidTy, PointerType::get(Type::SByteTy),0);
>std::vector<Value*>
2012 Sep 04
2
[LLVMdev] [NVPTX] Backend cannot handle array-of-arrays constant
I think our test case demonstrates that requiring the array item being
initialized to be constant is incorrect. NVPTX does not crash anymore
and produces correct result with the following change:
--- NVPTXAsmPrinter.cpp 2012-09-03 15:14:00.000000000 +0200
+++ NVPTXAsmPrinter.cpp 2012-09-04 15:47:17.859398193 +0200
@@ -1890,17 +1890,15 @@
case Type::ArrayTyID:
case Type::VectorTyID:
case
2009 Oct 20
0
[LLVMdev] Dereference PointerType?
2009/10/20 Daniel Waterworth <da.waterworth at googlemail.com>
> Hello,
>
> I'm wondering if it's possible to dereference a PointerType. I have an
> AllocaInst and although I can find the number of elements allocated, (using
> Instruction::getOperand(0)), I can't find a way to get the size of each
> element. What I'd like to do is:
>
> AllocaInst
2009 Oct 20
3
[LLVMdev] Dereference PointerType?
Hello,
I'm wondering if it's possible to dereference a PointerType. I have an
AllocaInst and although I can find the number of elements allocated, (using
Instruction::getOperand(0)), I can't find a way to get the size of each
element. What I'd like to do is:
AllocaInst *alloca;
PointerType *ptr_type = dynamic_cast<PointerType*>(alloca);
assert(ptr_type);
Type
2004 Aug 16
2
[LLVMdev] Bytecode file bugs / doc bugs
Dear Reid and Chris,
I thought I should send this to the list in case anyone else is struggling
to interpret bytecode files with the new docs.
(1) First a bug I already mentioned to Reid. Unlike the other new
module headers module 0x01 still uses the old 32-bit and 32-bit format
instead of the new 5-bit and 27-bit format. Thus the first module in the
file will be 0x00000001 followed by
2012 Aug 20
3
[LLVMdev] How to Identify if an Argument is a pointer?
Hello,
I was wondering how you can identify whether or not an Argument is a
pointer. The "isDereferenceablePointer" function for Values doesn't
seem to be what I want (I don't care whether or not the pointer points
to allocated memory or is suitably aligned). I want to be able to
discern between:
i32* %pArray
and
i32 %pArray
Thanks in advance.
- John
2012 Sep 06
0
[LLVMdev] [NVPTX] Backend cannot handle array-of-arrays constant
On 09/04/2012 09:57 AM, Dmitry N. Mikushin wrote:
> I think our test case demonstrates that requiring the array item being
> initialized to be constant is incorrect. NVPTX does not crash anymore
> and produces correct result with the following change:
>
> --- NVPTXAsmPrinter.cpp 2012-09-03 15:14:00.000000000 +0200
> +++ NVPTXAsmPrinter.cpp 2012-09-04 15:47:17.859398193 +0200
>
2007 Jul 05
2
[LLVMdev] PATCH (rest of code changes) "bytecode" --> "bitcode"
Here is the bulk of the sanitizing.
My residual doubts center around the question
whether we still do/want to support (un)compressed *byte*code
in 2.0/2.1.
I need a definitive word on this to proceed.
My understanding is that bytecode is already gone, but there are
still some functions/enums that really deal with *byte*code
(instead of *bit*code).
I did not touch those areas, so the attached
2012 Sep 04
0
[LLVMdev] [NVPTX] Backend cannot handle array-of-arrays constant
NVCC successfully handles the same IR, if we try to process the same
.cu file with clang+nvptx and nvcc:
CLANG/NVPTX:
=============
$ cat dayofweek.cu
__attribute__((device)) char yweek[7][4] = { "MON", "TUE", "WED",
"THU", "FRI", "SAT", "SUN" };
$ clang -cc1 -emit-llvm -fcuda-is-device dayofweek.cu -o dayofweek.ll
$ cat
2010 Mar 29
6
[LLVMdev] Union types
Hi All,
I've noticed the union type in the language manual [1] but it seems
it's not used too much.
According to the manual, the code:
union {
int a;
double b;
} a;
Could be compiled to:
%union.anon = type union { i32, double }
@a = common global %union.anon zeroinitializer, align 8 ;
<%union.anon*> [#uses=0]
But when I try to assemble it, I get:
$ llvm-as union.ll
2012 Sep 03
2
[LLVMdev] [NVPTX] Backend cannot handle array-of-arrays constant
Dear all,
Looks like the NVPTX backend cannot handle array-of-arrays contant
(please see the reporocase below). Is it supposed to work? Any ideas
how to get it working? Important for our target applications.
Thanks,
- Dima.
$ cat test.ll
; ModuleID = '__kernelgen_main_module'
target datalayout =
2012 Jan 27
3
[LLVMdev] How to get the string value?
Thanks Duncan,
Yes, it is a ConstantExpr! Thank you!
Now trying to find a clue in ConstantExpr's functions to get that string :-)
Regards,
Welson
On Thu, Jan 26, 2012 at 9:04 PM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Welson Sun,
>
> > Hi, if I have some LLVM code like this:
> >
> > @.str = private unnamed_addr constant [7 x i8]
2011 Feb 15
3
[LLVMdev] Structure Types and ABI sizes
Hi all,
We're hitting some walls here when generating the correct structure
layout for specific C++ ABI requirements, and I was wondering how much
StructLayout could help.
For instance, the ABI has some complicated rules on the size of
derived classes
(http://www.codesourcery.com/public/cxx-abi/abi.html#class-types) and
LLVM struct type cannot reflect that in full.
Example:
// CHECK:
2010 Mar 15
0
[LLVMdev] [patch] Writing ConstantUnions
On Mon, Mar 15, 2010 at 11:51:47AM +0000, Tim Northover wrote:
> Hello,
>
> I noticed a bit of a gap in the current code for unions: a
> ConstantUnion cannot be written out to .ll.
I've been continuing plugging gaps as I find them, which might not be
the best way to solve this problem, but it has produced something that
seems to do roughly what I expect.
I've split it into