Displaying 20 results from an estimated 5000 matches similar to: "API to Differentiate between SSA and non SSA form"
2008 Apr 16
2
[LLVMdev] Problems in removing a cloned instruction.
Hi all,
I am trying to write a pass where i am creating a clone of a
function (the only difference being, the new function returns void ,
instead of any value).
I am creating a new Function Type with a void return type (rest being
the same as original function), and using this i am creating a new
function body. Then, i clone the body of the old function into new
function, but when ever i
2005 Nov 22
3
[LLVMdev] Cloning BasicBlock
Hi ,
I am trying to clone a BasicBlock. I want both to co-exist and I have introduced
a conditional branch to the original or the cloned BB.
I tried mapping the original instruction and the clone as below :
Instruction *NewInst = II->clone();
if (II->hasName())
NewInst->setName(II->getName());
NewBB->getInstList().push_back(NewInst);
ValueMap[II] =
2008 Apr 16
0
[LLVMdev] Problems in removing a cloned instruction.
Hi,
I'm gonna try to give some feedback, but I have only been working with LLVM
for a few days, so don't take what I'm saying without verifying :-)
> BasicBlock *ProgSlicer::CloneBasicBlock(const BasicBlock *BB,
> DenseMap<const Value*, Value*> &ValueMap,
> const char *NameSuffix, Function *F) {
>
> BasicBlock
2016 Jul 26
2
[PATCH] Add support for the 'unless' matcher in the dynamic layer.
Even if it still did add overhead, it seems perfectly reasonable, from a
user's perspective (namely mine), that if I introduce unnecessary narrowing
matchers to my chain that there may be a performance penalty.
The ability to do the following easily outweighs any performance issues for
me:
anyOf (
/* hasName("..."), */
hasName("...")
)
though C++ not allowing
2014 Aug 28
4
[LLVMdev] How to tell whether a GlobalValue is user-defined
>> Agreed. If ld64 can drop support for .o produced by the old gcc that
>> would be awesome. Failing that, what is really needed is
> Because of static archives, the linker has to support old .o files for quite a while. I also don’t know when clang starting getting this right.
r123585 (Jan 16 17:19:34 2011) I think.
> Also, this seems like linker complexity for a very
2005 Nov 22
0
[LLVMdev] Cloning BasicBlock
On Tue, 2005-11-22 at 09:12 -0800, Sandra Johnson wrote:
> Hi ,
> I am trying to clone a BasicBlock. I want both to co-exist and I have
> introduced
> a conditional branch to the original or the cloned BB.
I have a pass I haven't commited that does just this. Well, it does so
to implement Arnold and Ryder style profiling. I can send you a copy of
that if you want (I hope to
2011 Jul 01
2
[LLVMdev] Operand name missing
Hi,
I was trying to use the following code in a if condition
I->getOperand(0)->hasName()
where I is an instruction with following condition already true -
I->getOpcode() == Instruction::Call
When I compiled a C code with llvm-2.9, I see a function call with no
operand name (for operand 0) . This happens for a function with
varArgs. The interesting part is that the same C code when
2019 Aug 23
2
LLVM-8.0 | Requesting Help : Function->getName() returns empty string
Hello All,
I am creating a Module and getting Function pointer as below in some
function.
Function *fn = module->getFunction(fnName);
printf("func Name: %s.\n", fn->getName().str().c_str());
.
.
return (intptr_t) fn;
This prints : "func Name: main." I convert the ptr to int and return it.
Later I am receiving this as a Func Handler in other function
2005 Nov 23
1
[LLVMdev] Cloning BasicBlock
Hello Andrew ,
Yes , I have missed the phi node since my paths merge together. I'll try this out.
I am implementing a timer based profiling scheme and hope your code will be useful
for me. Please send me a copy of your code.
Thanks
Sandra
Andrew Lenharth <andrewl at lenharth.org> wrote: On Tue, 2005-11-22 at 09:12 -0800, Sandra Johnson wrote:
> Hi ,
> I am trying
2016 Nov 28
2
Looking for help with an ast matcher
Hi Piotr,
Thanks. Yeah, it seemed a little weird, but it was what got me closest. I
found out that the matcher I supplied here was working for clang-query
3.8.1. I'm working on a clang-tidy module for 4.0.0 - it's not working
there.
Could you elaborate on the "onImplicitObjectArgument"? There is no document
on it on the clang page. So I wouldn't know how it works or what it
2006 Mar 19
1
[LLVMdev] Idioms for retrieving global symbols and inheritance
Hello,
I have a couple of doubts, as listed below:
1. To list all the global variables in the module, I am iterating
using type_iterator and for each Type I get, I am using value_iterator
to iterate over Values . In the second iteration I am getting
unexpected results. For each type obtained from type_iterator->second,
value_iterator->first produces the same list as what
2011 Jul 01
0
[LLVMdev] Operand name missing
On Fri, Jul 1, 2011 at 12:35 AM, ankur deshwal <a.s.deshwal at gmail.com> wrote:
> Hi,
>
> I was trying to use the following code in a if condition
> I->getOperand(0)->hasName()
>
> where I is an instruction with following condition already true -
> I->getOpcode() == Instruction::Call
>
> When I compiled a C code with llvm-2.9, I see a function call with
2016 Nov 28
2
Looking for help with an ast matcher
Hi Piotr,
I think I found a working matcher: match
ifStmt(hasCondition(implicitCastExpr(hasImplicitDestinationType(isInteger()),
has(cxxMemberCallExpr(callee(cxxMethodDecl(hasName("compare"))),
hasArgument(0, declRefExpr().bind("str2")),
callee(memberExpr(has(declRefExpr().bind("str1"))))))))).bind("case1")
This one bind to both str1 and str2 in
2007 Oct 26
2
[LLVMdev] llvm-build for ARM
Hi,
I am trying to build llvm-2.1 and llvm-gcc4 but running into build errors
and not getting the code base compiled successfully since quite a few time.
My host OS: Linux(Debian-Ubuntu)
My Host processor: i686
My target processor: Arm11/Arm9
Languages support needed: c, c++
host compiler version: gcc 4.0.1
I am getting errors while compiling LLVM and llvm-gcc both:
The LLVM build error is
2012 Jun 18
0
[LLVMdev] Which pass converts call printf to puts?
Hi Thomson,
the new call to puts() is inserted right away, whereas the old call to
printf() is removed a bit later in SimplifyLibCalls::runOnFunction(). If
you browse the code a bit and backtrack the call stack to see what
happens with the return value of PrintFOpt::OptimizeFixedFormatString(),
you will stumble upon this segment in SimplifyLibCalls.cpp:1703ff.:
// Try to optimize this call.
2008 Mar 25
2
[LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
Hello,
Trying to get my machine building up-to-date, and a nightly going, i
ran into an assertion during the build of llvm-gcc 4.2:
$ make -j2
<snip!>
/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/xgcc
-B/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/
-B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-gnu/bin/
2011 Dec 02
5
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On 11/23/2011 05:52 PM, Hal Finkel wrote:
> On Mon, 2011-11-21 at 21:22 -0600, Hal Finkel wrote:
>> > On Mon, 2011-11-21 at 11:55 -0600, Hal Finkel wrote:
>>> > > Tobias,
>>> > >
>>> > > I've attached an updated patch. It contains a few bug fixes and many
>>> > > (refactoring and coding-convention) changes inspired
2018 Dec 09
2
Parse LLVM IR
Hello,
I am a newbie to LLVM and right now I am on the hook to parse some IR code
and do some instrumentations. However, my problem is that no matter how I
tweak my parsing code, it simply cannot print out anything.
So here is my C code:
int your_fun(int arg2) {
int x = arg2;
return x+2;
}
And here is my parsing code:
#include <llvm/IR/Module.h>
#include
2008 Mar 25
0
[LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
Hi Chandler,
This looks like a FE error, so you probably won't be able to get an
LLVM bitcode file for us. You could help by whittling the test case
down to something managable. First get a preprocessed file. Then I
would suggest following the instructions on this page to reduce the
testcase:
http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction
That will help us a lot with the bug
2009 Dec 04
4
[LLVMdev] r72619
On Dec 4, 2009, at 12:40 PM, Duncan Sands wrote:
> Hi Bill,
>
>> Here's what I get with TOT compiling with -Os. The orig.ll is what
>> I get before r72619. Notice that orig.ll has only one function in
>> it. Both the one you sent and duncan.ll have more than one
>> function. It's not the fact that more than one function is showing
>> up, but