Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] how to have a Operator reference from an Instruction?"
2010 Aug 05
1
[LLVMdev] a problem when using postDominatorTree
Wenbin Zhang wrote:
> I'll try the trunk, as well as check my code again. If indeed it's not
> fixed, I'll try to post a triggering case here.
> Thanks for the advice~
>
Did you run the -mergereturn pass (it might also be called
UnifyExitNodes in the source code)? This is the pass that ensures that
each function has exactly one basic block that returns control to the
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
2010 Aug 27
2
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
----- Original Message -----
From: "John Criswell" <criswell at illinois.edu>
To: "Wenbin Zhang" <zhangwen at cse.ohio-state.edu>
Cc: <llvmdev at cs.uiuc.edu>
Sent: Friday, August 27, 2010 5:09 PM
Subject: Re: [LLVMdev] how to check whether from basicblock A we can go to
basicblock B within the same function?
> Wenbin Zhang wrote:
>> Dear all,
2008 Feb 10
2
[LLVMdev] Instrumenting virtual function calls
I'm attempting to instrument virtual function calls in my code. After
each virtual call I'm calling my own registerMethod function, with an
integer marking the location of the call and a pointer to the function
that was called.
However, and this is where I get confused, the function pointer
doesn't match any of the functions in my module. I'd hoped to call
2010 Aug 05
0
[LLVMdev] a problem when using postDominatorTree
I'll try the trunk, as well as check my code again. If indeed it's not
fixed, I'll try to post a triggering case here.
Thanks for the advice~
Best,
--Wenbin
----- Original Message -----
From: "Tobias Grosser" <grosser at fim.uni-passau.de>
To: "Wenbin Zhang" <zhangwen at cse.ohio-state.edu>
Cc: <llvmdev at cs.uiuc.edu>
Sent: Thursday, August
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
2010 Aug 27
0
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
Wenbin Zhang wrote:
> ----- Original Message -----
> From: "John Criswell" <criswell at illinois.edu>
> To: "Wenbin Zhang" <zhangwen at cse.ohio-state.edu>
> Cc: <llvmdev at cs.uiuc.edu>
> Sent: Friday, August 27, 2010 5:09 PM
> Subject: Re: [LLVMdev] how to check whether from basicblock A we can go to
> basicblock B within the same
2006 May 09
1
[LLVMdev] Instruction::getOpcodeName()
When compiling a release version on Linux with GCC 3.4.4, I get the
following warnings repeated multiple times when linking LLVMCore.o:
/usr/bin/ld: `.gnu.linkonce.t._ZNK4llvm11Instruction13getOpcodeNameEv' referenced in section `.gnu.linkonce.r._ZNK4llvm11Instruction13getOpcodeNameEv' of /proj/llvm/build/lib/VMCore/Release/Instruction.o: defined in discarded section
2012 Jul 31
3
[LLVMdev] rotate
Andy,
Here is the left circular shift operator patch. I apologize to the reviewer
in advance. The patch has a good bit of fine detail. Any
comments/criticisms?
Some caveats...
1) This is just the bare minimum needed to make the left circular shift
operator work (e.g. no instruction combining).
2) I tried my best to select operator names in the existing style; please
feel free to change them as
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
2010 Aug 27
0
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
Wenbin Zhang wrote:
> Dear all,
> Is there a way to check whether we can go from A to B within a
> function when I'm writing a pass?
I assume you are asking whether control flow can pass from BasicBlock A
to BasicBlock B. In that case, yes: all you need to do is look at the
terminator instruction of BasicBlock A and see if it can branch to
BasicBlock B.
There's a new indirect
2012 Apr 12
0
[LLVMdev] detection of constant diagonal matrix * vector
Hi!
currently instcombine does not detect constant diagonal matrix times vector,
for example
a.xx * [2 0] + a.yy * [0 3]
can be optimized to
a * [2 3]
I have implemented this for float. I know that this assumes x * 0 = 0
which is not
ieee compliant but i post it here in case it is interesting for someone.
on my wish list
there is still an option for target independent optimizations to have x
2010 Aug 05
3
[LLVMdev] a problem when using postDominatorTree
On 08/05/2010 06:46 AM, Wenbin Zhang wrote:
> Hi all,
> I'm using postDominatorTree to do some program analysis. My code works
> well for small tests, but when I run it on real applications, the
> following error occurs:
> /Inorder PostDominator Tree: DFSNumbers invalid: 0 slow queries.
> [1] <<exit node>> {0,21}
> [2] %bb1 {1,2}
> [2] %bb {3,4}
> [2]
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
2010 Aug 27
2
[LLVMdev] how to check whether from basicblock A we can go to basicblock B within the same function?
Dear all,
Is there a way to check whether we can go from A to B within a function when I'm writing a pass?
Thanks.
Best,
--Wenbin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100827/8cf26762/attachment.html>
2010 Apr 22
0
[LLVMdev] problem when building coreutil
Hi all,
I'm new to llvm and klee. Now I'm trying to build up coreutil with klee.
Following the steps online (http://klee.llvm.org/TestingCoreutils.html), I
went to step 3 and stuck.
When I try to run:
klee --libc=uclibc --posix-runtime ./cat.bc -version
Error occurred like:
klee: error: Cannot find linker input '/lib/libc.a'
klee: ModuleUtil.cpp:42: llvm::Module*
2016 Apr 24
2
Retrieving numeric value of instruction operand
Hi John,
Thank you so much for the valuable answer! :)
However, i have one tough issue that i need to solve, in my pass :
let's say here
%s = add %a, %b
I need to check if the value of %a or %b is 2 or 4 and then apply a
transformation to the other operand accordingly,
for example if the value of %a = 2 the i'll multiply %b by 2 in my
transform pass.
I'm having a hard time
2010 Jul 21
1
[LLVMdev] Can we map a instruction in IR back to source code?
Hi all,
Can we map an IR instruction to the correlated source code?
Or, if I want to recognize an assignment statement in the source code, can we quickly find all the related IR instructions according to a 'store'?
E.g., i = j +k + m[5] in IR will have some loads and some getelementptrs. Can we define which IRs are related to this assignment?
Thanks.
Regards,
--Wenbin
--------------
2010 Jul 22
2
[LLVMdev] the generation of getelementptr instruction
Hi all,
I'm reading the language reference of LLVM here: http://llvm.org/docs/LangRef.html#i_getelementptr
In the first example, it shows that the generated IR is supposed to be something like:
%reg = getelementptr %ST* %s, i32 1, i32 2, i32 1, i32 5, i32 13
But when I copied the code and compile it myself (using v2.7), I got five getelementptr instructions, which are just like the equivalent
2009 Feb 08
2
[LLVMdev] overflow + saturation stuff
On Feb 8, 2009, at 8:58 AM, Dan Gohman wrote:
> Hi Chris,
>
> Would it be better to split add into multiple opcodes instead of using
> SubclassData bits?
No, I don't think so. The big difference here is that (like type)
"opcode" never changes for an instruction once it is created. I
expect that optimizations would want to play with these (e.g. convert
them to
2018 Sep 26
2
[FPEnv] FNEG instruction
On Tue, Sep 25, 2018 at 7:37 PM Sanjay Patel <spatel at rotateright.com> wrote:
>
>
> On Tue, Sep 25, 2018 at 2:28 PM Cameron McInally <cameron.mcinally at nyu.edu>
> wrote:
>
>> On Tue, Sep 25, 2018 at 1:39 PM Sanjay Patel <spatel at rotateright.com>
>> wrote:
>>
>>> I have 1 concern about adding an explicit fneg op to IR:
>>>
2011 Jun 02
0
[LLVMdev] LLVM Instruction Operands
On Jun 2, 2011, at 9:46 AM, Griffin Wright wrote:
>
> Hello all:
>
> I apologize for what I imagine is a rather silly question, but I'm still
> somewhat new to LLVM and am stuck. I am reworking some code that was
> originally in the backend involving MachineInstructions and
> MachineOperands, and I now need for it to function as an LLVM IR pass,
> using just
2013 Oct 28
2
[LLVMdev] Are Opcode and register mappings exposed anywhere?
On Oct 28, 2013, at 2:02 PM, Tyler Hardin <tghardin1 at catamount.wcu.edu> wrote:
> See the source here: https://github.com/earl/llvm-mirror/blob/master/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp. It looks like getRegisterName might do what you want, but I don't know where it's coming from. (Whether it's a function or a member of a super class. Hopefully, if it's
2011 Mar 03
0
[LLVMdev] how can I have LoopInfo in a module pass?
I think this assertion failure may be caused by the getAnalysisUsage(). Mine is like the following:
class myclass : public ModulePass{
...
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
}
...
}
Is it enough? Thanks!
Best,
--Wenbin
----- Original Message -----
From: Wenbin Zhang
To: John Criswell
Cc: llvmdev at