mirror of
https://github.com/RPCS3/llvm.git
synced 2025-03-04 08:37:45 +00:00
[safestack] Fix alignment of dynamic allocas.
Fixes PR25588. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254109 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
5efecd1377
commit
5062813b46
@ -541,7 +541,7 @@ void SafeStack::moveDynamicAllocasToUnsafeStack(
|
||||
if (DynamicTop)
|
||||
IRB.CreateStore(NewTop, DynamicTop);
|
||||
|
||||
Value *NewAI = IRB.CreateIntToPtr(SP, AI->getType());
|
||||
Value *NewAI = IRB.CreatePointerCast(NewTop, AI->getType());
|
||||
if (AI->hasName() && isa<Instruction>(NewAI))
|
||||
NewAI->takeName(AI);
|
||||
|
||||
|
@ -25,7 +25,7 @@ entry:
|
||||
; CHECK-NEXT: %[[INTTOPTR:.*]] = inttoptr i64 %[[AND]] to i8*
|
||||
; CHECK-NEXT: store i8* %[[INTTOPTR]], i8** @__safestack_unsafe_stack_ptr
|
||||
; CHECK-NEXT: store i8* %[[INTTOPTR]], i8** %unsafe_stack_dynamic_ptr
|
||||
; CHECK-NEXT: %[[ALLOCA:.*]] = inttoptr i64 %[[SUB]] to i32*
|
||||
; CHECK-NEXT: %[[ALLOCA:.*]] = bitcast i8* %[[INTTOPTR]] to i32*
|
||||
%a = alloca i32, i32 %size
|
||||
|
||||
; CHECK: setjmp
|
||||
|
Loading…
x
Reference in New Issue
Block a user