search for: d56598

Displaying 6 results from an estimated 6 matches for "d56598".

2019 Jan 18
2
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...(psub inbounds a b) == 0) { use(b) } Juneyoung Lee On Fri, Jan 18, 2019 at 7:50 AM Sanjoy Das <sanjoy at playingwithpointers.com> wrote: > On Mon, Jan 14, 2019 at 3:23 AM Juneyoung Lee via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic > function, which subtracts two pointers and returns the difference. Its > semantic is as follows. > > > > If p1 and p2 point to different objects, and neither of them is based on > a pointer casted from an integer, `llvm.psub(p1, p2)` returns po...
2019 Jan 14
7
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...rtoints decreases from 31,721 to 7,772 (24.5%). I'll introduce llvm.psub patch first. --- Adding llvm.psub --- By defining pointer subtraction intrinsic, we can get performance gain because it gives more undefined behavior than just subtracting two ptrtoints. Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic function, which subtracts two pointers and returns the difference. Its semantic is as follows. If p1 and p2 point to different objects, and neither of them is based on a pointer casted from an integer, `llvm.psub(p1, p2)` returns poison. For example, %p = alloca %q...
2019 Jan 14
2
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...patch first. >> >> >> --- Adding llvm.psub --- >> >> By defining pointer subtraction intrinsic, we can get performance gain >> because it gives more undefined behavior than just subtracting two >> ptrtoints. >> >> Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic >> function, which subtracts two pointers and returns the difference. Its >> semantic is as follows. >> If p1 and p2 point to different objects, and neither of them is based on >> a pointer casted from an integer, `llvm.psub(p1, p2)` returns p...
2019 Jan 15
2
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...ing llvm.psub --- >>>> >>>> By defining pointer subtraction intrinsic, we can get performance gain >>>> because it gives more undefined behavior than just subtracting two >>>> ptrtoints. >>>> >>>> Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic >>>> function, which subtracts two pointers and returns the difference. Its >>>> semantic is as follows. >>>> If p1 and p2 point to different objects, and neither of them is based >>>> on a pointer casted from an intege...
2019 Jan 14
4
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...patch first. >> >> >> --- Adding llvm.psub --- >> >> By defining pointer subtraction intrinsic, we can get performance gain >> because it gives more undefined behavior than just subtracting two >> ptrtoints. >> >> Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic >> function, which subtracts two pointers and returns the difference. Its >> semantic is as follows. >> If p1 and p2 point to different objects, and neither of them is based on >> a pointer casted from an integer, `llvm.psub(p1, p2)` returns p...
2019 Jan 15
2
Reducing the number of ptrtoint/inttoptrs that are generated by LLVM
...ing llvm.psub --- >>>> >>>> By defining pointer subtraction intrinsic, we can get performance gain >>>> because it gives more undefined behavior than just subtracting two >>>> ptrtoints. >>>> >>>> Patch https://reviews.llvm.org/D56598 adds llvm.psub(p1,p2) intrinsic >>>> function, which subtracts two pointers and returns the difference. Its >>>> semantic is as follows. >>>> If p1 and p2 point to different objects, and neither of them is based >>>> on a pointer casted from an intege...