mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Fix a pointer-arithmetic bug that caused 64-bit host pointer values to
be truncated to 32 bits. This fixes the recent Benchmarks/McCat/09-vor regression on x86-64, among other things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50372 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
00acf97feb
commit
3e2dda63d0
@ -48,7 +48,7 @@ public:
|
|||||||
void *Allocate(unsigned AllocSize, unsigned Alignment, MemRegion **RegPtr) {
|
void *Allocate(unsigned AllocSize, unsigned Alignment, MemRegion **RegPtr) {
|
||||||
|
|
||||||
char* Result = (char*) (((uintptr_t) (NextPtr+Alignment-1))
|
char* Result = (char*) (((uintptr_t) (NextPtr+Alignment-1))
|
||||||
& ~(Alignment-1));
|
& ~((uintptr_t) Alignment-1));
|
||||||
|
|
||||||
// Speculate the new value of NextPtr.
|
// Speculate the new value of NextPtr.
|
||||||
char* NextPtrTmp = Result + AllocSize;
|
char* NextPtrTmp = Result + AllocSize;
|
||||||
|
Loading…
Reference in New Issue
Block a user