Displaying 20 results from an estimated 46 matches for "insertafter".
2016 Aug 25
2
InstList insert depreciated?
Jon,
> You want:
> TaintVar->insertAfter(FirstI);
This worked! Thank you.
On Thu, Aug 25, 2016 at 9:38 AM, Jonathan Roelofs
<jonathan at codesourcery.com> wrote:
>
>
> On 8/25/16 7:01 AM, Shehbaz Jaffer via llvm-dev wrote:
>>
>> I tried an alternative way of adding instruction by first getting the
>> fir...
2009 Jan 08
2
[LLVMdev] insertAfter method Patch
Hi,
I have added an insertAfter method to the ilist and Instruction classes. The methods are implemented as efficiently as the currently existing insert and insertBefore methods. The insertAfter method was created to mirror a similar method in another compiler in order to ease an ongoing port. The patch, which is very small is in...
2009 Jan 08
0
[LLVMdev] insertAfter method Patch
Thomas B. Jablin wrote:
> Hi,
> I have added an insertAfter method to the ilist and Instruction classes. The methods are implemented as efficiently as the currently existing insert and insertBefore methods. The insertAfter method was created to mirror a similar method in another compiler in order to ease an ongoing port. The patch, which is very small is in...
2009 Jan 08
2
[LLVMdev] insertAfter method Patch
John Criswell wrote:
> Small nitpick: in Instruction.cpp, the comment for insertAfter says
> insertBefore and not insertAfter.
> :)
>
> -- John T.
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
Thanks fo...
2016 Sep 05
2
LLVM 3.8.0 - Adding new instruction to a basic block
Why not just use Instruction::insertAfter()?
I->insertAfter(new_inst);
On Mon, Sep 5, 2016 at 8:13 AM, Ryan Taylor via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Try incrementing the iterator before using.
>
> On Sep 5, 2016 10:26, "Simona Simona via llvm-dev" <
> llvm-dev at lists.llvm.org> wro...
2016 Aug 25
2
InstList insert depreciated?
...rgument deduction/substitution failed:
/home/shehbaz/project/plugin/FSlice.cpp:284:34: note: candidate
expects 3 arguments, 2 provided
IList.insert(FirstI, TaintVar);
I tried an alternative way of adding instruction by first getting the
first instruction of the basic block, and then calling insertAfter()
on it as follows:
auto &B = F->getEntryBlock();
auto &IList = B.getInstList();
auto &FirstI = *IList.begin();
auto TaintVar = new AllocaInst(IntPtrTy);
// IList.insert(FirstI, TaintVar); // OLD
FirstI.insertAfter(TaintVar); // NEW
This compiles, however, while...
2016 Sep 05
2
LLVM 3.8.0 - Adding new instruction to a basic block
...Simona via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hello,
>>
>> I'm trying to add a new instruction after a given instruction in a basic
>> block.
>> Until LLVM 3.7, I was using the following code:
>>
>> BB->getInstList().insertAfter(I, new_inst);
>> [where both I and new_inst are Instruction*]
>>
>> In LLVM 3.8 however, the SymbolTableList was created as a wrapper over
>> iplist.
>> Could anyone please tell me how I can do the same type of insertion in
>> LLVM 3.8?
>>
>
>...
2009 Jan 13
0
[LLVMdev] [Fwd: Re: insertAfter method Patch]
Dear All,
Should this patch be committed now? I just did a quick read-over of it
when it was first submitted.
-- John T.
-------------- next part --------------
An embedded message was scrubbed...
From: "Thomas B. Jablin" <tjablin at CS.Princeton.EDU>
Subject: Re: [LLVMdev] insertAfter method Patch
Date: Mon, 12 Jan 2009 15:58:34 -0500 (EST)
Size: 4813
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090113/9fc69d11/attachment.eml>
2017 Jun 10
1
[Bug 101371] New: GlobalCSE Pass moves phi instructions
...>,
assertion=assertion at entry=0x52ca18 "q->op != OP_PHI || p->op == OP_PHI",
file=file at entry=0x52c968
"../../../../../src/gallium/drivers/nouveau/codegen/nv50_ir_bb.cpp",
line=line at entry=219,
function=function at entry=0x52ce80
<nv50_ir::BasicBlock::insertAfter(nv50_ir::Instruction*,
nv50_ir::Instruction*)::__PRETTY_FUNCTION__> "void
nv50_ir::BasicBlock::insertAfter(nv50_ir::Instruction*,
nv50_ir::Instruction*)")
at assert.c:92
#3 0x00007ffff6764f62 in __GI___assert_fail (assertion=0x52ca18 "q->op !=
OP_PHI || p->op == OP_PHI&...
2017 Mar 24
2
Problem about API difference between LLVM3.5 and LLVM3.9
...duplicate of original function's
return type; 'arg_types' denotes the duplicated argument type.
And I have analysed the cause of error "Argument value does not match
function argument type!" and I can determine that the error APIs are
mutateType()(3rd line)or getArgumentList().insertAfter()(10th line) between
LLVM3.5 and LLVM3.9.
Anyone came across the same problem or knew the error API above? Thanks a
lot!
1 unsigned address_space = func->getType()->getAddressSpace();
2 FunctionType *new_type = FunctionType::get(new_return_type,
arg_types, type->isVarArg(...
2016 Sep 04
2
LLVM 3.8.0 - Adding new instruction to a basic block
Hello,
I'm trying to add a new instruction after a given instruction in a basic
block.
Until LLVM 3.7, I was using the following code:
BB->getInstList().insertAfter(I, new_inst);
[where both I and new_inst are Instruction*]
In LLVM 3.8 however, the SymbolTableList was created as a wrapper over
iplist.
Could anyone please tell me how I can do the same type of insertion in LLVM
3.8?
Thank you and Regards,
Simona
-------------- next part --------------
An HT...
2011 May 02
3
[LLVMdev] difficulty in replicating a sequence of instructions + inserting at a different location -- "instruction doesn't dominate all uses"
I am having difficulty in replicating a sequence of instructions (2+,
with def-use dependencies within) and inserting them at a different
location.
I have tried a few different approaches (IRBuilder, new Instruction(),
I->clone(), insertBefore/insertAfter,etc.), all leading to the same
error msg:
"Instruction doesn't dominate all uses"
The DevList has a few previous discussions on this, but not much of
hints I can get from there.
Could somebody point me a code template or an existing LLVM source file
that does similar things?
Th...
2017 Dec 19
3
DBG_VALUE insertion for spills breaks bundles
...up with
MI1 [BundledSucc=true, BundledPred=false]
DBG_VALUE MI [BundledSucc=false, BundledPred=false]
MI2 [BundledSucc=false, BundledPred=true]
Since this happens after the final instruction scheduling, it results in broken schedules. I believe setting the bundling flags before invoking MBB->insertAfter in ExtendRanges should fix this.
Best regards
Saurabh Verma
--------------------------------------------------------------
Intel Research and Development Ireland Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
This e...
2017 Dec 22
0
DBG_VALUE insertion for spills breaks bundles
...up with
MI1 [BundledSucc=true, BundledPred=false]
DBG_VALUE MI [BundledSucc=false, BundledPred=false]
MI2 [BundledSucc=false, BundledPred=true]
Since this happens after the final instruction scheduling, it results in broken schedules. I believe setting the bundling flags before invoking MBB->insertAfter in ExtendRanges should fix this.
Best regards
Saurabh Verma
--------------------------------------------------------------
Intel Research and Development Ireland Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
This e...
2011 Dec 06
1
[LLVMdev] Changing order of instructions
...at an arbitrary point, what would be the best way to change
this segment with the same instructions in a different order, say, [MI5,
MI6, MI4]?
I looked into splice(), but it was impossible to hold iterators that
remained valid before and after the splicing. I tried erase/remove()
with insert/insertAfter(), but I ended up with the instructions being
destroyed.
TIA
--
Evandro Menezes Austin, TX emenezes at codeaurora.org
Qualcomm Innovation Center, Inc is a member of Code Aurora Forum
2017 Apr 03
0
[PATCH v2 2/3] nv50/ir: handle logops with NOT in AlgebraicOpt
...).mod == Modifier(NV50_IR_MOD_NOT))
+ set0->asCmp()->setCond = inverseCondCode(set0->asCmp()->setCond);
+ if (logop->src(1).mod == Modifier(NV50_IR_MOD_NOT))
+ set1->asCmp()->setCond = inverseCondCode(set1->asCmp()->setCond);
+
logop->bb->insertAfter(logop, set1);
logop->bb->insertAfter(logop, set0);
--
2.12.2
2012 Feb 04
0
[LLVMdev] How to properly use copyValue?
...le to make copies of as they are designed to be
pointer-comparable and permitting copies would break that.
Inserting is a separate issue. Supposing you create a new instruction
using "BO = BinaryOperator::createAdd(X, Y);" you then need to insert it
using BO->insertBefore or BO->insertAfter.
Nick
2014 Jun 26
2
[LLVMdev] eraseFromParent and stack dump
Hello,
I am creating a new instruction and I want to replace the use of a
specified instruction.
This is the code I have written
Instruction *new_instr = BinaryOperator::Create(Instruction::Sub, op1,
op2, "");
b->getInstList().insertAfter(old_instr, new_instr); //b is the BasicBlock
old_instr->replaceAllUsesWith(new_instr);
old_instr->eraseFromParent();
When I print the basic block, I see that my instruction was inserted
and replaces the old instruction, however I get a stack dump, when I run
the instrumented IR file.
0...
2011 May 09
2
[LLVMdev] <badref> showed up when duplicating a list of dependent instructions
...ON;
BasicBlock * pb = PREVIOUS_POSITION->getParent();
for(p = coll.begin(); p != coll.end(); ++p){
Instruction * CurI = * p;
Instruction * CloneI = CurI->clone();
CloneI->setName(CurI->getName());
errs() << *CloneI << "\n";
pb->getInstList().insertAfter(pi, CloneI); // Inserts newInst after
pi in pb
// adjust pi: point to the newly inserted inst:
pi = CurI;
}//end of for loop on p
However, I got the following errors:
--- Insert New (cloned) Instructions: ...
<badref> = load i32* @strstart, align 4
<badref> = add i...
2012 Feb 03
2
[LLVMdev] How to properly use copyValue?
Since there are no constructors for Value, how do you properly insert a new
Value?
If I create a pointer Value *newValue and then call AA.copyValue(oldValue,
newValue), this does not work, since newValue is not allocated.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120203/44086cf5/attachment.html>