search for: isintrinsic

Displaying 20 results from an estimated 22 matches for "isintrinsic".

2015 Dec 11
2
RFC: New function attribute HasInaccessibleState
...iour from function attributes. - if (F->doesNotAccessMemory()) { + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { // Can't do better than that! } else if (F->onlyReadsMemory()) { FunctionEffect |= Ref; if (!F->isIntrinsic()) // This function might call back into the module and read a global - // consider every global as possibly being read by this function. FR.MayReadAnyGlobal = true; } else { FunctionEffect |= ModRef; // Can't say anything us...
2015 Dec 04
2
RFC: New function attribute HasInaccessibleState
...iour from function attributes. - if (F->doesNotAccessMemory()) { + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { // Can't do better than that! } else if (F->onlyReadsMemory()) { FunctionEffect |= Ref; if (!F->isIntrinsic()) // This function might call back into the module and read a global - // consider every global as possibly being read by this function. FR.MayReadAnyGlobal = true; } else { FunctionEffect |= ModRef; // Can't say anything us...
2017 Jan 18
10
llvm is getting slower, January edition
...cate unnecessarily in APInt::operator[+-]. NFC. -1% r271020: Don't generate unnecessary signed ConstantRange during multiply. NFC. -3% 23. r271615: [LoopUnroll] Set correct thresholds for new recently enabled unrolling heuristic. +22% 24. r276942: Don't invoke getName() from Function::isIntrinsic(). -1% r277087: Revert "Don't invoke getName() from Function::isIntrinsic().", rL276942. +1% 25. r279585: [LoopUnroll] By default disable unrolling when optimizing for size. 26. r286814: [InlineCost] Remove skew when calculating call costs. +3% 27. r289755: Make processing @llvm.a...
2015 Dec 04
4
RFC: New function attribute HasInaccessibleState
...> - if (F->doesNotAccessMemory()) { > + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { > // Can't do better than that! > } else if (F->onlyReadsMemory()) { > FunctionEffect |= Ref; > if (!F->isIntrinsic()) > // This function might call back into the module and read a global - > // consider every global as possibly being read by this function. > FR.MayReadAnyGlobal = true; > } else { > FunctionEffect |= ModRef; >...
2015 Dec 11
2
RFC: New function attribute HasInaccessibleState
...tAccessMemory()) { > > + if (F->doesNotAccessMemory() || > > F->onlyAccessesArgMemory()) { > > // Can't do better than that! > > } else if (F->onlyReadsMemory()) { > > FunctionEffect |= Ref; > > if (!F->isIntrinsic()) > > // This function might call back into the module and > > read a global - > > // consider every global as possibly being read by this > > function. > > FR.MayReadAnyGlobal = true; > > } els...
2015 Dec 04
2
RFC: New function attribute HasInaccessibleState
...mory()) { >>> + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { >>> // Can't do better than that! >>> } else if (F->onlyReadsMemory()) { >>> FunctionEffect |= Ref; >>> if (!F->isIntrinsic()) >>> // This function might call back into the module and read a global - >>> // consider every global as possibly being read by this function. >>> FR.MayReadAnyGlobal = true; >>> } else { >>>...
2017 Jan 18
2
llvm is getting slower, January edition
...::operator[+-]. NFC. -1% >> r271020: Don't generate unnecessary signed ConstantRange during multiply. NFC. -3% >> 23. r271615: [LoopUnroll] Set correct thresholds for new recently enabled unrolling heuristic. +22% >> 24. r276942: Don't invoke getName() from Function::isIntrinsic(). -1% >> r277087: Revert "Don't invoke getName() from Function::isIntrinsic().", rL276942. +1% >> 25. r279585: [LoopUnroll] By default disable unrolling when optimizing for size. >> 26. r286814: [InlineCost] Remove skew when calculating call costs. +3% >>...
2017 Jan 20
2
llvm is getting slower, January edition
...NFC. > -1% > > r271020: Don't generate unnecessary signed ConstantRange during > multiply. NFC. -3% > > 23. r271615: [LoopUnroll] Set correct thresholds for new recently > enabled unrolling heuristic. +22% > > 24. r276942: Don't invoke getName() from Function::isIntrinsic(). -1% > > r277087: Revert "Don't invoke getName() from > Function::isIntrinsic().", rL276942. +1% > > 25. r279585: [LoopUnroll] By default disable unrolling when optimizing > for size. > > 26. r286814: [InlineCost] Remove skew when calculating call costs. +...
2008 Apr 27
1
[LLVMdev] Can't invoke an intrinsic?
In line 1157 of Verifier.cpp, there is this code: Assert1(!F->isIntrinsic() || (i == 0 && isa<CallInst>(I)), "Cannot take the address of an intrinsic!", &I); This check appears to have a problem with this line: invoke void @llvm.memcpy.i32( i8* %._items.i.i, i8* %._items2.i.i, i32 ptrtoint (i32* getelementptr ([0 x i32...
2015 Dec 04
2
RFC: New function attribute HasInaccessibleState
...->doesNotAccessMemory()) { >> + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { >> // Can't do better than that! >> } else if (F->onlyReadsMemory()) { >> FunctionEffect |= Ref; >> if (!F->isIntrinsic()) >> // This function might call back into the module and read a global - >> // consider every global as possibly being read by this function. >> FR.MayReadAnyGlobal = true; >> } else { >> FunctionEffect |= Mo...
2015 Dec 11
3
RFC: New function attribute HasInaccessibleState
...gt; + if (F->doesNotAccessMemory() || > > > F->onlyAccessesArgMemory()) { > > > // Can't do better than that! > > > } else if (F->onlyReadsMemory()) { > > > FunctionEffect |= Ref; > > > if (!F->isIntrinsic()) > > > // This function might call back into the module and > > > read a global - > > > // consider every global as possibly being read by > > > this > > > function. > > >...
2009 Oct 17
1
[LLVMdev] getIntrinsicID() optimization
Hi Chris, Function is currently 108 bytes large. Could 4 more bytes really be an issue? Actually 2 should suffice. While I understand that some applications value storage more than anything, many applications value compilation time very highly. getIntrinsicID is called all over the place (isIntrinsic uses it as well), and every single time it checks the function name. To me that sounds a lot more dramatic than 2 bytes. Anyway, using SubclassData could work. It's already being used for the calling convention, which has values ranging from 0 to 68 (fitting in 7 bits), while intrinsic ID...
2015 Dec 04
2
RFC: New function attribute HasInaccessibleState
...mory()) { >>> + if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { >>> // Can't do better than that! >>> } else if (F->onlyReadsMemory()) { >>> FunctionEffect |= Ref; >>> if (!F->isIntrinsic()) >>> // This function might call back into the module and read a global - >>> // consider every global as possibly being read by this function. >>> FR.MayReadAnyGlobal = true; >>> } else { >>>...
2015 Dec 14
3
RFC: New function attribute HasInaccessibleState
...() || > > > > > > F->onlyAccessesArgMemory()) { > > > > > > // Can't do better than that! > > > > > > } else if (F->onlyReadsMemory()) { > > > > > > FunctionEffect |= Ref; > > > > > > if (!F->isIntrinsic()) > > > > > > // This function might call back into the module and > > > > > > read a global - > > > > > > // consider every global as possibly being read by > > > > > > this > > > > > > function. >...
2015 Dec 14
2
RFC: New function attribute HasInaccessibleState
...{ >> > >> > > > > > // Can't do better than that! >> > >> > > > > > } else if (F->onlyReadsMemory()) { >> > >> > > > > > FunctionEffect |= Ref; >> > >> > > > > > if (!F->isIntrinsic()) >> > >> > > > > > // This function might call back into the module and >> > >> > > > > > read a global - >> > >> > > > > > // consider every global as possibly being read by >> > >> > >...
2015 Dec 14
2
RFC: New function attribute HasInaccessibleState
...> > > F->onlyAccessesArgMemory()) { > > > > // Can't do better than that! > > > > } else if (F->onlyReadsMemory()) { > > > > FunctionEffect |= Ref; > > > > if (!F->isIntrinsic()) > > > > // This function might call back into the module and > > > > read a global - > > > > // consider every global as possibly being read by > > > > this > > &gt...
2015 Dec 04
4
RFC: New function attribute HasInaccessibleState
...if (F->doesNotAccessMemory() || F->onlyAccessesArgMemory()) { >>>>> // Can't do better than that! >>>>> } else if (F->onlyReadsMemory()) { >>>>> FunctionEffect |= Ref; >>>>> if (!F->isIntrinsic()) >>>>> // This function might call back into the module and read a global - >>>>> // consider every global as possibly being read by this function. >>>>> FR.MayReadAnyGlobal = true; >>>>> }...
2009 Oct 17
0
[LLVMdev] getIntrinsicID() optimization
On Oct 16, 2009, at 5:50 AM, Nicolas Capens wrote: > Hi all, > > While profiling I discovered that the Function::getIntrinsicID() > method is called a lot, and every time it uses string comparison to > recompute the ID number. As far as I know the name of an intrinsic > function doesn’t change, so the ID could be determined just once at > Function construction time.
2009 Oct 16
2
[LLVMdev] getIntrinsicID() optimization
Hi all, While profiling I discovered that the Function::getIntrinsicID() method is called a lot, and every time it uses string comparison to recompute the ID number. As far as I know the name of an intrinsic function doesn't change, so the ID could be determined just once at Function construction time. I've attached a patch that does this and it appears to work for the code I
2015 Dec 03
3
Function attributes for LibFunc and its impact on GlobalsAA
----- Original Message ----- > From: "James Molloy via llvm-dev" <llvm-dev at lists.llvm.org> > To: "Vaivaswatha Nagaraj" <vn at compilertree.com> > Cc: "LLVM Dev" <llvm-dev at lists.llvm.org> > Sent: Thursday, December 3, 2015 4:41:46 AM > Subject: Re: [llvm-dev] Function attributes for LibFunc and its impact on GlobalsAA > >