Displaying 20 results from an estimated 300000 matches similar to: "[LLVMdev] array assignemnt"
2011 Oct 18
3
[LLVMdev] GEP instructions: is it possible to reverse-engineer array accesses?
Dear All,
As of late I am having a hard time getting my head around how array accesses
are translated by Clang into LLVM IR: the often misunderstood GEP instruction.
I am trying to reverse-engineer array accesses to discover the number of dimensions
and actual indexes of the original, and I am beginning to wonder whether this is
possible at all. To illustrate (some of) my troubles, consider
2011 Oct 18
0
[LLVMdev] GEP instructions: is it possible to reverse-engineer array accesses?
Hi Gabriel, I suggest you don't bother with testcases like this that are doing
undefined things. For example, neither i nor k are initialized, so the result
of accessing the array is undefined. Thus the frontend can (and apparently
does) produce anything strange thing it does. What is more, the result aux is
unused, so there is no obligation to compute it correctly. I think you will
get
2012 Oct 05
4
[LLVMdev] TSVC/Equivalencing-dbl
----- Original Message -----
> From: "Duncan Sands" <duncan.sands at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: llvmdev at cs.uiuc.edu
> Sent: Friday, October 5, 2012 12:10:03 PM
> Subject: Re: TSVC/Equivalencing-dbl
>
> Oops, I ran the testsuite wrong: read clang output for dragonegg
> output.
Okay, can you resummarize? Do
2012 Oct 05
2
[LLVMdev] TSVC/Equivalencing-dbl
----- Original Message -----
> From: "Duncan Sands" <duncan.sands at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: llvmdev at cs.uiuc.edu
> Sent: Friday, October 5, 2012 2:50:06 PM
> Subject: Re: TSVC/Equivalencing-dbl
>
> Hi Hal,
>
> On 05/10/12 20:32, Hal Finkel wrote:
> > ----- Original Message -----
> >>
2012 Nov 15
2
[LLVMdev] unable to interface with target machine
On 15/11/12 10:15, Philip Ashmore wrote:
> On 15/11/12 08:58, Duncan Sands wrote:
>>> Is there a way to get the target triple of the machine the code is running on,
>>> or barring that, the machine llvm was built on?
>>
>> clang -v
>>
>> Ciao, Duncan.
>> _______________________________________________
>> LLVM Developers mailing list
>>
2012 Jun 04
3
[LLVMdev] Clang 3.1 __builtin_ia32_pcmpeqd128 doesn't work anymore
Thanks for the answer,
So if i understand right, i can't directly compile the c code using clang.
And i need to manually generate some llvm ir to replace the builtin
function.
Is that right?
2012/6/4 Duncan Sands <baldrick at free.fr>
> Hi Christophe,
>
> > I recently migrate from llvm/clang 2.8 to 3.1.
> > The builtin __builtin_ia32_pcmpeqd128 compile and works
2012 Oct 11
1
[LLVMdev] Question about the old C back-end
Hi Duncan,
On 11/10/12 15:47, Duncan Sands wrote:
> Hi Roel,
>
>> When going through the internals of the old C back-end, I see that the CBE
>> encapsulates arrays into a struct. The source code has the following comment to
>> explain this behaviour.
>>
>> // Arrays are wrapped in structs to allow them to have normal
>> // value semantics
2012 Jun 04
0
[LLVMdev] Clang 3.1 __builtin_ia32_pcmpeqd128 doesn't work anymore
Hi Christophe,
> So if i understand right, i can't directly compile the c code using clang.
> And i need to manually generate some llvm ir to replace the builtin function.
>
> Is that right?
I think so, though I don't know much about clang's support for such intrinsics,
just what's in http://clang.llvm.org/compatibility.html#vector_builtins
Ciao, Duncan.
>
>
2012 Oct 07
0
[LLVMdev] TSVC/Equivalencing-dbl
Hi Hal,
To get my understanding right, is this a test-case problem or there is a problem with x86 code generation?. I can spend some time to look into the problem.
Thanks,
Shivaram
-----Original Message-----
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Hal Finkel
Sent: Saturday, October 06, 2012 1:57 AM
To: Duncan Sands
Cc: llvmdev at cs.uiuc.edu
2012 Oct 05
0
[LLVMdev] TSVC/Equivalencing-dbl
PS: Here's how I can reproduce with clang on linux:
clang -S -o tsc.ll -O0 -flto -std=gnu99 tsc.c ; clang -S -o dummy.ll -O0 -flto
-std=gnu99 dummy.c ; opt -std-compile-opts tsc.ll -S -o tsc.1.ll ; opt
-std-compile-opts dummy.ll -S -o dummy.1.ll ; llvm-link tsc.1.ll dummy.1.ll -S
-o total.ll ; opt -std-link-opts total.ll -S -o total.1.ll ; llc total.1.ll ;
gcc -o z total.1.s
The program
2012 Jun 12
2
[LLVMdev] How to use LLVM optimizations with clang
Hi
Yes, they both are exactly the same.
Regards
Shahzad
On Tue, Jun 12, 2012 at 9:38 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi, is the comb.ll used here:
>
>
>> $ time lli ./comb.ll
>>
>> then the runtime is
>>
>> real 0m2.671s
>> user 0m2.640s
>> sys 0m0.020s
>>
>> But, if I convert this same file comb,ll
2012 Nov 15
0
[LLVMdev] unable to interface with target machine
On 15/11/12 10:10, Duncan Sands wrote:
> On 15/11/12 10:15, Philip Ashmore wrote:
>> On 15/11/12 08:58, Duncan Sands wrote:
>>>> Is there a way to get the target triple of the machine the code is
>>>> running on,
>>>> or barring that, the machine llvm was built on?
>>>
>>> clang -v
>>>
>>> Ciao, Duncan.
>>>
2010 Mar 25
4
[LLVMdev] source code information in LLVM IR
Hi,
I am generating llvm IR code for C source code using clang as the
front end. I am wondering if there is any way of mapping an llvm IR
line number back to its C source code line number.
Thanks
Sincerely
Arvind
--
Arvind Sudarsanam
Utah State University
Phone: (435) 512-7769
E-mail: theonemorpheus at gmail.com
Web-site: http://cc.usu.edu/~asudarsanam
2012 Jun 12
2
[LLVMdev] How to use LLVM optimizations with clang
Hello
I need some help here please.
If we compile source files directly in to native code:
$ clang -O3 -lm *.c
then the runtime is like following
real 0m2.807s
user 0m2.784s
sys 0m0.012s
and If we emit LLVM bytcode and apply optimizations
$ clang -O3 -c -emit-llvm *.c
$ llvm-link *.o -o comb.ll
$ time lli ./comb.ll
then the runtime is
real 0m2.671s
user 0m2.640s
sys 0m0.020s
But, if I
2011 Aug 10
3
[LLVMdev] Handling of pointer difference in llvm-gcc and clang
Hi,
We are developing a bounded model checker for C/C++ programs
(http://baldur.iti.kit.edu/llbmc/) that operates on LLVM's intermediate
representation. While checking a C++ program that uses STL containers
we noticed that llvm-gcc and clang handle pointer differences in
disagreeing ways.
Consider the following C function:
int f(int *p, int *q)
{
return q - p;
}
Here's the
2009 Oct 20
4
[LLVMdev] Using address space attribute in LLVM
> llvm-gcc doesn't support address spaces. This is a clang-only feature.
However it could be implemented in llvm-gcc.
Ciao,
Duncan.
2010 Nov 05
2
[LLVMdev] Hoisting elements of array argument into registers
> I see the same with clang. I'm not sure why the optimizers do so much better
> when they can see that sp is a local array (the special initial values don't
> matter).
It is the scalar replacement of aggregates pass that puts everything into
registers when sp is a local array. What happens is: the tail recursion in
wf is eliminated. wf is inlined into g. scalarrepl turns the
2012 Jun 08
2
[LLVMdev] How to use LLVM optimizations with clang
Hi,
> If I compile the program using the following command line i.e.
>
> $ clang -O3 -lm *.c
this may be doing link time optimization.
>
> then
>
> $ time ./a.out
>
> real 0m2.606s
> user 0m2.584s
> sys 0m0.012s
>
> BUT, if I use all the optimizations enabled with -O3 but specify them
> explicity i.e.
you can just use "opt -O3"
2012 Jun 08
2
[LLVMdev] How to use LLVM optimizations with clang
Hi,
> I tried it with -o - but its producing an error
>
> gcc: fatal error: cannot specify -o with -c, -S or -E with multiple files
>
> What you suggest?
what I wrote:
>> for F in *.c ; do B=`basename $F .c` ; gcc -fplugin=/path/to/dragonegg.so
>> -S -o - $F -fplugin-arg-dragonegg-emit-ir | opt -adce -o $B.ll ; done
>> clang *.ll
Thanks to the for loop and
2012 Nov 06
2
[LLVMdev] Help needed on debugging llvm
On 6 November 2012 14:52, Duncan Sands <baldrick at free.fr> wrote:
> Hi Anitha,
>
>
> On 06/11/12 10:19, Anitha Boyapati wrote:
>
>> Hi Duncan
>> I am facing a build error about __builtin_iceil
>>
>
> it's surely just that dragonegg doesn't have any support for this builtin.
>
ok. Just verified that Target.cpp and x86_builtins do not have