Displaying 20 results from an estimated 1000 matches similar to: "arg_iterator missing inc/dec operators"
2017 Mar 22
2
arg_iterator missing inc/dec operators
> The predecrement / decrement operators *do* exist on this iterator:
> https://github.com/llvm-mirror/llvm/blob/master/include/
> llvm/ADT/ilist_iterator.h#L153
>
> Maybe you meant:
>
> llvm::Function *f;
> foo(&*--f->arg_end());
>
> ?
>
Correct, I mean exactly this. Though &* is not important in this case.
This code doesn't work anymore, as
2004 Oct 12
2
[LLVMdev] GenRegisterInfo.h.inc
Hi all,
I cannot figure out why is named GenRegisterInfo.h.inc and not
GenRegisterInfo.inc ...
Is it for a dependency problem?
Back again to compilation problems under win32 with VC
llvm\lib\Analysis\DataStructure\Local.cpp(628) : error C2105: '--' needs
l-value
the line is:
Result.mergeWith(getValueDest(**--CS.arg_end()));
Can I submit patches for mutate it in something like:
2009 Jun 18
2
[LLVMdev] Referring to an argument in another function
I would like to instrument certain function calls with a function call
of my own that takes some of the same arguments. For example, I would
like to instrument calls to free with some function foo, so the C code
would look like:
foo(myarg1, myarg2, ptr);
free(ptr);
The problem occurs when I grab the arg from the free function and try
to pass it to foo...
if (isCallToFree(&I)) {
Value*
2009 Nov 11
4
[LLVMdev] Adding function call in LLVM IR using IRBuilder causes assertion error
Hi,
I'm trying to add function calls in the LLVM IR using the IRBuilder
class. I've read both tutorials about functions but I still get
assertion errors. I allocate memory for all function arguments and pass
them as explained in the tutorial.
My code is (this function is supposed to add a call to f in bb at pos):
void addCallSite(Function *f, BasicBlock *bb, BasicBlock::iterator pos)
2011 Sep 16
2
[LLVMdev] How to duplicate a function?
Hi all,
Sorry for the inconvenient about the previous post. The files were not
attached. So I put them here again.
I am a newbie in LLVM and I am trying to replace the function like:
old function || new function
==============================
=========
int haha(int a) { int haha(int a, char* ID) {
===>
}
2009 Apr 16
2
[LLVMdev] Patch: MSIL backend global pointers initialization
Hi Anton
>
> > The interesting for me part of the CallInst is printf(i8* noalias %0, i32
> > 123).
> > I was diging in doxygen documentation but I really can't see the easy way
> to
> > compare those instructions and again finish with reinvented (but working)
> > wheel ;).
> Ah, sorry. I missed that you're doing variadic calls, not casting
>
2008 Sep 13
3
[LLVMdev] Duplicate Function with duplicated Arguments
I'm now writing a pass and I wanna ask a question about how to
duplicate the function and add duplicated arguments in llvm, for
example:
func(int a, char *b) -> func(int a, char *b, int a1, char *b1)
I'm now stuck at using "getOrInsertFunction" and how to handle
"getArgumentList", please share your opinion, thanks a lot!
James
2009 Jun 18
0
[LLVMdev] Referring to an argument in another function
Scott Ricketts wrote:
> I would like to instrument certain function calls with a function call
> of my own that takes some of the same arguments. For example, I would
> like to instrument calls to free with some function foo, so the C code
> would look like:
>
> foo(myarg1, myarg2, ptr);
> free(ptr);
>
> The problem occurs when I grab the arg from the free function and
2004 Oct 12
0
[LLVMdev] GenRegisterInfo.h.inc
On Tue, 12 Oct 2004, Paolo Invernizzi wrote:
> Hi all,
> I cannot figure out why is named GenRegisterInfo.h.inc and not
> GenRegisterInfo.inc ...
> Is it for a dependency problem?
I'm not sure what you're saying here. In the X86 backend, for example, we
generate both X86GenRegisterInfo.h.inc and X86GenRegisterInfo.inc. The
former is #included into X86RegisterInfo.h and the
2009 Nov 17
1
[LLVMdev] LLVM target-independent code generator for reconfigurable logic
hi every one,
i am use LLVM targeting a architecture with a processor and
reconfigurable logic around it.
now the llvm code generator work fine with the processor, but i am
struggling to make the code generator to generate proper DAGs for the
reconfigurable logic because "The LLVM target-independent code
generator is designed to support efficient and quality code generation
for standard
2009 Apr 16
0
[LLVMdev] Patch: MSIL backend global pointers initialization
Hi, Artur
> // CallSites have equal signatures
> bool MSILWriter::cmpCallSite(CallSite A, CallSite B) {
> return (getCallSiteFType(A)==getCallSiteFType(B) &&
> A.getAttributes()==B.getAttributes());
> }
As it is impossible to honour argument attributes in MSIL I don't see
why you should compare attributes. You seems to have the same MSIL
call signature for calls
2009 Sep 06
2
[LLVMdev] Graphviz and LLVM-TV
On 2009-09-06 17:30, Ioannis Nousias wrote:
> I've tried to write a DFGPrinter based on the CFGPrinter, as you
> suggested, but encountered problems.
>
> The GraphWriter expects
> GraphTraits<GraphType>::nodes_begin()/nodes_end(). The way this is
> implemented in CFG.h, a function is a graph of basic blocks. A
> GraphTraits<Function*> inherits from
2012 Oct 08
1
[LLVMdev] Fwd: Multiply i8 operands promotes to i32
Hello Pedro,
As others have said we're assuming that you're using Clang as the frontend,
the MSP430TargetInfo class inside lib/Basic/Targets.cpp (clang codebase)
set ints to be 16 bits wide, so you should get 16bit mults straight away
without promotion. But anyways for 8bit multiplicantions you can do the
following to bypass argument promotion:
1) go to the lib/CodeGen/TargetInfo.cpp
2012 Mar 07
3
[LLVMdev] Alias analysis result
Hello everyone,
I am trying to find the alias between a store instruction's pointer operand
and function arguments. This is the code,
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequiredTransitive<AliasAnalysis>();
AU.addPreserved<AliasAnalysis>();
}
virtual bool runOnFunction(Function &F) {
AliasAnalysis &AA =
2010 Jun 09
1
[LLVMdev] Segmentation fault 'cause of accessing function arguments
Hi all,
I am experimenting to run a pass inherited from CallGraphSCCPass. In
the pass, I iterate all functions in a SCC. In each iteration, I
access all arguments of a function in the following way:
Function::arg_iterator PI = fun->arg_begin(), PE = fun->arg_end();
...
I have no trouble with building. However, I am troubled with
"segmentation fault" when I run the pass
2012 Apr 13
2
[LLVMdev] Incorrect result in LLVM Alias Analysis
It contains the bitcode file(without any optimization) of the below program,
void map(int *a)
{
*a=20;
}
int main(){
int *a=(int *)malloc(sizeof(int));
*a=15;
map(a);
return 0;
}
I want to check if the pointer operand of each store instruction aliases
with the function's arguments. I have used below code for this,
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
2009 Nov 11
0
[LLVMdev] Adding function call in LLVM IR using IRBuilder causes assertion error
CreateAlloca(Type) returns an object of type Type*, the memory that
can hold an object of type Type. You probably don't want to be
creating allocas just before calling the function since 1) if that
call winds up in a loop they'll grow your stack frame without bound,
and 2) the memory they point to is initially uninitialized. Where did
the tutorial tell you to do that?
In general, when I
2009 Nov 18
2
[LLVMdev] Strange error using CallInst constructor
Hi,
This is probably more of a standard C++ question instead of an actual
LLVM question, but here it goes anyway. I'm trying to invoke the
following constructor:
CallInst::CallInst(Value *Func, InputIterator ArgBegin, InputIterator
ArgEnd,
const Twine &NameStr, BasicBlock *InsertAtEnd);
My code is:
using namespace llvm;
void replaceByClone(Function *f, CallInst *I){
Function *clone =
2009 Apr 15
0
[LLVMdev] Patch: MSIL backend global pointers initialization
Hi, Artur
> The interesting for me part of the CallInst is printf(i8* noalias %0, i32
> 123).
> I was diging in doxygen documentation but I really can't see the easy way to
> compare those instructions and again finish with reinvented (but working)
> wheel ;).
Ah, sorry. I missed that you're doing variadic calls, not casting
variadic function to definite ones. I think you
2009 Jul 17
1
[LLVMdev] Function Argument in LLVM
Hi,
I am new to LLVM, and want to get the name of each argument for a given Function in a .bc file.
Function.Argument.getName() returns "". Could somebody please help me figure this out?
Thanks,
::Saman Zonouz
-------------- next part --------------
An HTML attachment was scrubbed...
URL: