Displaying 20 results from an estimated 600 matches similar to: "[LLVMdev] Backend optimizations"
2014 Mar 26
2
[LLVMdev] Linking problem
Hi,
I'm writing a pass that implements a jump table with an array of
blockaddress and an indirectbr instruction.
It get a blockaddress in the array (via getelementptr and an index) and
then jump to this basicblock via the indirectbr.
I tried to compile several libraries to test my pass and the run their
test-suite. It works fine with, for e.g, libTomCrypt (in -O0,1,2,3).
With GMP or
2017 Apr 28
2
LLVMGetFirstFunction() / LLVMGetNextFunction( ) problem
Hi, I have a problem - looking for advice.
I have a source code file with two functions which are compiled into a .bc
file.
When the bitcode file is loaded, I can dump the module and see the two
functions:
...
; Materializable
; Function Attrs: noinline nounwind uwtable
define void @matmul(double*, double*, double*, i32, i32, i32) #0 {}
; Materializable
; Function Attrs: noinline nounwind
2015 Mar 19
2
[LLVMdev] [cfe-dev] Controlling the LTO optimization level
On Thu, Mar 19, 2015 at 11:12 AM Rafael Espíndola <
rafael.espindola at gmail.com> wrote:
> Having the analogous of -O0/-O1/-O2/-O3 for the LTO pipeline makes
> sense I think.
>
> I agree that something along option number 2 is probably the best.
> Some questions:
>
> * Should "clang -O3 foo.o -o foo" use LTO with -O3?
> * Should "clang foo.o -o
2015 Jan 26
2
[LLVMdev] Backend optimizations
> From the department of ignorance and stupid suggestions: Run this
> conversion after other passes that deal with call instructions?
Yes, but my modifications are not made in a MachineFunctionPass, it's a
custom inserter for an intrinsic... I'm not sure when intrinsic lowering
is applied, but I guess before any MachineFunctionPass? So I'm not sure
I can chosse the order at this
2016 Sep 07
2
Test failures building RELEASE_3.9.0/final
I ran "ninja check-asan" and no errors. But "ninja check-msan" had 117
errors.
I took the first FAILED test, which was for eventfd.cc, and executed the
command
line creating an eventfd executable in a temporary directory and then
executed that file using gdb. Finally, used bt to dump the stack.
I've emailed llvm-admin at lists.llvm.org to setup an account since
2015 Mar 19
2
[LLVMdev] [cfe-dev] Controlling the LTO optimization level
+ OptLevel = opt[1] - '0';
Please check and reject things like -OX at least in the gold plugin.
Can you add a test showing that
* createLowerBitSetsPass is run at -O0
* the addLateLTOOptimizationPasses passes are run at -O1, but not -O0
I think the patch is fine otherwise, but wait for a review from
someone on the ld64 side (Duncan, Manman or Bob for example).
Thanks,
Rafael
2012 Apr 26
2
[LLVMdev] Detect if a basicblock is part of a loop
Hi,
I'm trying to detect if a basicblock is part of a loop or not.
I tried the llvm::LoopInfo like that (http://llvm.org/docs/doxygen/html/classllvm_1_1LoopInfo.html#a4abca289c73cd09487e05d11d9f7d877):
LoopInfo *loop = new LoopInfo();
bool isLoop = loop->getLoopFor(myBB); // getLoopFor - Return the inner most loop that BB lives in. If a basic block is in no loop (for example the entry
2011 Aug 11
5
[LLVMdev] IR code modification/transformation
Hi,
I have a question about the llvm passes.
I'm iterating over a basicblock and I can get an instruction and print it.
Now, I want to iterate over the instruction and be able to modify the values of the instruction.
For example, if my instruction is an add "<result> = add i32 4, %var" I want to transform it in a sub "<result> = sub i32 4, %var".
I looked up
2016 Sep 28
2
Xcode issues
On Wed, Sep 28, 2016 at 11:13:35AM -0700, Mehdi Amini wrote:
>
> > On Sep 28, 2016, at 11:00 AM, Rinaldini Julien via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> >
> > Hi,
> >
> > I’m using llvm+clang (+ a wrapper for swift that allow me to use my clang to compile swift files) inside Xcode and I have encountered two issues with the new clang 3.9 and
2012 May 08
2
[LLVMdev] RE : RE : svn trunk comilation error
> De : 陳韋任 [chenwj at iis.sinica.edu.tw]
> Date d'envoi : mardi 8 mai 2012 11:37
> À : Rinaldini Julien
> Cc: LLVM Developers Mailing List
> Objet : Re: [LLVMdev] RE : svn trunk comilation error
>
> Hi Rinaldini,
>
> You probably need to illustrate what your enviroment is, what revision you
> checkout and how you build LLVM. I have no problem build LLVM svn here.
2015 Mar 24
2
[LLVMdev] Propagate clang attribute to IR
> On 24 Mar 2015, at 14:55, Aaron Ballman <aaron at aaronballman.com> wrote:
>
> On Tue, Mar 24, 2015 at 9:48 AM, Rinaldini Julien
> <julien.rinaldini at heig-vd.ch> wrote:
>> Hi,
>>
>> I want to *tag* some functions with some *flags*. I was using annotate((“myFlag”)) and everything was working fine until I tried on ObjC method. It seems that clang just
2012 Apr 26
2
[LLVMdev] Detect if a basicblock is part of a loop
Hi Rinaldini,
In order to find information about loops inside a given function you should use something like "LoopInfo *LI = P->getAnalysis<LoopInfo>()", remembering to add "AU.addRequired<LoopInfo>();" to your getAnalysisUsage method.
If the function you are interested to is not located in the module being compiled (if you created it as an auxiliary function,
2012 Apr 26
0
[LLVMdev] Detect if a basicblock is part of a loop
Rinaldini,
What exactly did you run? Specifically, you may be missing some
analysis passes that are necessary for LoopInfo to have the loop
information you desire.
-Hal
On Thu, 26 Apr 2012 14:02:04 +0000
Rinaldini Julien <julien.rinaldini at heig-vd.ch> wrote:
> Hi,
>
> I'm trying to detect if a basicblock is part of a loop or not.
>
> I tried the llvm::LoopInfo
2012 May 09
0
[LLVMdev] RE : RE : RE : svn trunk comilation error
> De : 陳韋任 [chenwj at iis.sinica.edu.tw]
> Date d'envoi : mardi 8 mai 2012 11:37
> À : Rinaldini Julien
> Cc: LLVM Developers Mailing List
> Objet : Re: [LLVMdev] RE : svn trunk comilation error
>
> Hi Rinaldini,
>
> You probably need to illustrate what your enviroment is, what revision you
> checkout and how you build LLVM. I have no problem build LLVM svn here.
2012 May 08
2
[LLVMdev] RE : svn trunk comilation error
Hi,
Sorry I did not precise that, but I'm already doing that...
I have, as you say, two different director, one for source and one for build (where I run my configure)...
Cheers
________________________________________
De : 陳韋任 [chenwj at iis.sinica.edu.tw]
Date d'envoi : mardi 8 mai 2012 05:21
À : Rinaldini Julien
Cc: LLVM Developers Mailing List
Objet : Re: [LLVMdev] svn trunk
2014 Oct 29
2
[LLVMdev] Problem in X86 backend (again)
>> // Increment loop variable and jmp
>> BuildMI(*MBB_erase, MBB_erase->end(), db, >> TII->get(X86::ADD64ri32),reg).addReg(reg).addImm(8);
>
> It looks like this instruction is defining virtual register "reg" the second time.
Thx for your answer...
Why would it define it again? I just want to use this register and add something to it...
Cheers
2016 Sep 28
2
Xcode issues
Hi,
I’m using llvm+clang (+ a wrapper for swift that allow me to use my clang to compile swift files) inside Xcode and I have encountered two issues with the new clang 3.9 and Xcode 8:
1) when compiling with the deployment target set to 10.0, I got this error: clang-3.9: error: invalid version number in '-miphoneos-version-min=10.0’. If I set back the deployment target to 9.3 it works fine.
2014 Dec 10
2
[LLVMdev] Virtual register problem in X86 backend
Hi,
Thx for your help...
Here is the IR code:
; ModuleID = 'foo_bar.c'
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
@.str = private unnamed_addr constant [6 x i8] c"MAIN\0A\00", align 1
; Function Attrs: nounwind uwtable
define i32 @main(i32 %argc, i8** %argv) #0 {
entry:
%retval = alloca i32,
2011 Aug 11
0
[LLVMdev] RE : IR code modification/transformation
Re-adding the list, below message was sent to me alone:
On 11 August 2011 13:45, Rinaldini Julien <julien.rinaldini at heig-vd.ch> wrote:
> Thx for all answers...
>
> I'll try that. But in a long term what I want to do will be a bit more complicated... It was just an example. In this case, the goal is to replace all add with sub that return the same result, like:
>
> var
2012 May 08
0
[LLVMdev] RE : svn trunk comilation error
Hi Rinaldini,
You probably need to illustrate what your enviroment is, what revision you
checkout and how you build LLVM. I have no problem build LLVM svn here. Have
you checked tools/llvm-config/LibraryDependencies.inc is exist?
Regards,
chenwj
--
Wei-Ren Chen (陳韋任)
Computer Systems Lab, Institute of Information Science,
Academia Sinica, Taiwan (R.O.C.)
Tel:886-2-2788-3799 #1667
Homepage: