llvm-project/llvm/lib/Transforms
Peter Collingbourne 184773d81f WholeProgramDevirt: For VCP use a 32-bit ConstantInt for the byte offset.
A future change will cause this byte offset to be inttoptr'd and then exported
via an absolute symbol. On the importing end we will expect the symbol to be
in range [0,2^32) so that it will fit into a 32-bit relocation. The problem
is that on 64-bit architectures if the offset is negative it will not be in
the correct range once we inttoptr it.

This change causes us to use a 32-bit integer so that it can be inttoptr'd
(which zero extends) into the correct range.

Differential Revision: https://reviews.llvm.org/D30016

llvm-svn: 295487
2017-02-17 19:43:45 +00:00
..
Coroutines [Coroutines] Add header guard to header that's missing one. 2017-01-30 16:32:20 +00:00
Hello Add auto-exporting of symbols from tools so that plugins work on Windows 2016-05-26 11:16:43 +00:00
IPO WholeProgramDevirt: For VCP use a 32-bit ConstantInt for the byte offset. 2017-02-17 19:43:45 +00:00
InstCombine InstCombine: fix extraction when performing vector/array punning 2017-02-17 07:36:03 +00:00
Instrumentation AddressSanitizer: don't track swifterror memory addresses 2017-02-15 20:43:43 +00:00
ObjCARC [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
Scalar [JumpThreading] Re-enable JumpThreading for guards 2017-02-17 04:21:14 +00:00
Utils [JumpThreading] Re-enable JumpThreading for guards 2017-02-17 04:21:14 +00:00
Vectorize [LV] Remove constant restriction for vector phi creation 2017-02-17 16:09:07 +00:00
CMakeLists.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00
LLVMBuild.txt [coroutines] Part 3 of N: Adding Boilerplate for Coroutine Passes 2016-07-28 21:04:31 +00:00