Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Why the fault?"
2014 Mar 03
3
[LLVMdev] C++11 reverse iterators (was C++11 is here)
On 3 March 2014 12:32, Pete Cooper <peter_cooper at apple.com> wrote:
> Would those work with a foreach construct? Perhaps I forgot to mention that was what I'm trying to work out here.
>
> In example 3 I was wondering if we could define a method reverse(). We could use sfinae to wrap that around rbegin/rend if people like that style?
Sorry, I was too terse... ;)
If MF is a
2014 Mar 03
3
[LLVMdev] [cfe-dev] C++11 reverse iterators (was C++11 is here)
On Sun, Mar 2, 2014 at 9:26 PM, Chris Lattner <sabre at nondot.org> wrote:
>
> On Mar 2, 2014, at 8:53 PM, Renato Golin <renato.golin at linaro.org> wrote:
>
> > On 3 March 2014 12:32, Pete Cooper <peter_cooper at apple.com> wrote:
> >> Would those work with a foreach construct? Perhaps I forgot to mention
> that was what I'm trying to work out
2014 Mar 03
2
[LLVMdev] C++11 reverse iterators (was C++11 is here)
On 3 March 2014 12:13, Pete Cooper <peter_cooper at apple.com> wrote:
> It would also be good to agree on a way to handle reverse iterators, especially on those which already use begin() and end() for going forwards. For example
rbegin() and rend()?
--renato
2014 Mar 04
3
[LLVMdev] [cfe-dev] C++11 reverse iterators (was C++11 is here)
On Mon, Mar 3, 2014 at 12:26 AM, Chris Lattner <sabre at nondot.org> wrote:
>
> On Mar 2, 2014, at 8:53 PM, Renato Golin <renato.golin at linaro.org> wrote:
>
> > On 3 March 2014 12:32, Pete Cooper <peter_cooper at apple.com> wrote:
> >> Would those work with a foreach construct? Perhaps I forgot to mention
> that was what I'm trying to work out
2014 Mar 03
2
[LLVMdev] [cfe-dev] C++11 reverse iterators (was C++11 is here)
On Mar 2, 2014, at 10:27 PM, Chandler Carruth <chandlerc at google.com> wrote:
>
> On Sun, Mar 2, 2014 at 10:13 PM, Saleem Abdulrasool <compnerd at compnerd.org> wrote:
> On Sun, Mar 2, 2014 at 9:26 PM, Chris Lattner <sabre at nondot.org> wrote:
>
> On Mar 2, 2014, at 8:53 PM, Renato Golin <renato.golin at linaro.org> wrote:
>
> > On 3 March 2014
2008 May 11
2
[LLVMdev] Python bindings available.
Hi Gordon,
Thanks for your comments.
> > Constant.string(value, dont_null_terminate) -- value is a string
> > Constant.struct(consts, packed) -- a struct, consts is a list of
> > other constants, packed is boolean
>
> I did this in Ocaml initially, but found the boolean constants pretty
> confusing to read in code. I kept asking "What's that random true
2008 Jan 27
0
[LLVMdev] BreakCriticalMachineEdge.h
Fernando,
The code there should be more or less functional, though it's not
currently used by anything. Eventually it should probably be moved to
a method on MachineBasicBlock.
The API breakage you're seeing is because some methods moved around.
Feel free to fix it. :-)
--Owen
On Jan 26, 2008, at 6:31 PM, Fernando Magno Quintao Pereira wrote:
>
> Hi LLVMers,
>
>
2008 Jan 27
2
[LLVMdev] BreakCriticalMachineEdge.h
Hi LLVMers,
what is the status of breaking critical edges in machine functions? I
just compiled the top of the LLVM tree, and I found
llvm/CodeGen/BreakCriticalMachineEdge.h. But this file seems not to be
up-to-date with the other classes in the top of the tree. For instance, it
calls isTerminatorInstr on llvm::TargetInstrInfo, but this method is no
longer there.
If I want to break
2015 Sep 13
3
RFC: faster simplifyInstructionsInBlock/SimplifyInstructions pass
LLVM has two similar bits of infrastructure: a simplifyInstructionsInBlock function and a SimplifyInstructions pass, both intended to be lightweight “fix up this code without doing serious optimizations” functions, as far as I can tell. I don’t think either is used in a performance-sensitive place in-tree; the former is mostly called in minor places when doing CFG twiddling, and the latter seems
2008 May 11
0
[LLVMdev] Python bindings available.
On May 11, 2008, at 07:36, Mahadevan R wrote:
> Hi Gordon,
>
> Thanks for your comments.
>>
No problem.
>> :) Type handles in particular are very important. You can't form a
>> recursive type without using them, so you can't build any sort of
>> data structure.
>
> On it already. BTW, where can I find a good example of how to use it?
To close
2010 May 11
1
[LLVMdev] All CallInsts mayHaveSideEffects
Hi,
All CallInsts should return true for Instruction::mayHaveSideEffects() because functions are not guaranteed to halt.
Inliner::runOnSCC calls isInstructionTriviallyDead to determine whether code can be dead code eliminated. isInstructionTriviallyDead returns true if Instruction::mayHaveSideEffects() returns false. A function that potentially runs forever based on its input but does not write
2010 May 11
1
[LLVMdev] All CallInsts mayHaveSideEffects
Does any real code benefit from dead code eliminating read-only functions?
Tom
----- Original Message -----
From: "Reid Kleckner" <rnk at mit.edu>
To: "Thomas B. Jablin" <tjablin at CS.Princeton.EDU>
Cc: "LLVM Developers Mailing List" <llvmdev at cs.uiuc.edu>
Sent: Monday, May 10, 2010 9:38:47 PM GMT -05:00 US/Canada Eastern
Subject: Re: [LLVMdev]
2017 Feb 17
2
[MemorySSA] inserting or removing memory instructions
Hi guys,
a question about updating memory SSA:
Is it expected that e.g insertion of MemoryDef doesn't change all dominated
uses?
For example test case CreateLoadsAndStoreUpdater produces:
define void @F(i8*) {
; 1 = MemoryDef(liveOnEntry)
store i8 16, i8* %0
; 4 = MemoryDef(1)
store i8 16, i8* %0
br i1 true, label %2, label %3
; <label>:2: ;
2014 Mar 01
2
[LLVMdev] C++11 is here!!! (and it looks like it'll stay!)
On 1 March 2014 19:24, David Chisnall <David.Chisnall at cl.cam.ac.uk> wrote:
> for (auto V : X.foo()) {
> ...
> }
+1
--renato
2017 Feb 17
2
[MemorySSA] inserting or removing memory instructions
In particular, if you want to add support, the right way to know what to
rename is (off the top of my head)
add a flag or something to have renamepass reset all uses it sees (you only
have to change the uses, defs are all linked together and thus already
fixed by the updater). Right now it only does that if they have no
defining access.
Make it skip blocks already in the visited set (the
2008 Apr 04
2
[LLVMdev] InstCombine Question
I am confused by this bit of code in instcombine:
09789 if (GetElementPtrInst *GEPI = dyn_cast<GetElementPtrInst>(Op)) {
09790 const Value *GEPI0 = GEPI->getOperand(0);
09791 // TODO: Consider a target hook for valid address spaces for this
xform.
09792 if (isa<ConstantPointerNull>(GEPI0) &&
09793
2010 Jun 18
1
[LLVMdev] Erasing Instruction
Hi,
Can anyone tell me how to erase an instruction, (specially a
load/store instruction) ?
If I use Instr->eraseFromParent(), I get following error. Note the
instruction does not have any use.
opt: /home/chayan/llvm/llvm-2.6/include/llvm/ADT/ilist.h:218:
llvm::ilist_iterator<NodeTy>&
llvm::ilist_iterator<NodeTy>::operator++() [with NodeTy =
llvm::Instruction]: Assertion
2010 Nov 13
1
[LLVMdev] problem with llvm reverse iterator
Hi,
I am writing an llvm pass wherein I require to iterate MachineBasicBlocks in
reverse. The ilist reverse_iterator is not functioning as expected. Nor is
the ilist iterator working
in reverse (although -- operator is overloaded to do so).
for (MachineFunction::iterator MBBI = mf_->end(), E = mf_->begin();MBBI !=
E; --MBBI)
{
MachineBasicBlock *MBB = MBBI;
2012 Jan 25
2
[LLVMdev] PLEASE help with Alias Analysis initialization assertion at the end of my pass
Hello all,
I really, really, really need your help. This is my third email now,
please don't ignore me! I understand this must be a trivial thing, but
I've ground to a halt, and REALLY need some guidance. Please see below for
the context of my problem. I'm not trying to be a waste of time, but I'm
desperate here.
I have a getAnalysisUsage method which does the following
2012 Jan 25
0
[LLVMdev] PLEASE help with Alias Analysis initialization assertion at the end of my pass
Griffin Wright wrote:
>
> Hello all,
>
> I really, really, really need your help. This is my third email now,
> please don't ignore me! I understand this must be a trivial thing, but
> I've ground to a halt, and REALLY need some guidance. Please see below for
> the context of my problem. I'm not trying to be a waste of time, but I'm
> desperate here.