mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 19:31:58 +00:00
These testcases check to see if we can promote malloc's to globals in some
cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16914 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e3ef9b5fe2
commit
95d0bbfda6
18
test/Transforms/GlobalOpt/malloc-promote-1.llx
Normal file
18
test/Transforms/GlobalOpt/malloc-promote-1.llx
Normal file
@ -0,0 +1,18 @@
|
||||
; RUN: llvm-as < %s | opt -globalopt | llvm-dis | not grep global
|
||||
|
||||
%G = internal global int* null
|
||||
|
||||
void %init() {
|
||||
%P = malloc int
|
||||
store int* %P, int** %G
|
||||
|
||||
%GV = load int** %G
|
||||
store int 0, int* %GV
|
||||
ret void
|
||||
}
|
||||
|
||||
int %get() {
|
||||
%GV = load int** %G
|
||||
%V = load int* %GV
|
||||
ret int %V
|
||||
}
|
20
test/Transforms/GlobalOpt/malloc-promote-2.llx
Normal file
20
test/Transforms/GlobalOpt/malloc-promote-2.llx
Normal file
@ -0,0 +1,20 @@
|
||||
; RUN: llvm-as < %s | opt -globalopt | llvm-dis | not grep malloc
|
||||
|
||||
%G = internal global int* null
|
||||
|
||||
void %init() {
|
||||
%P = malloc int, uint 100
|
||||
store int* %P, int** %G
|
||||
|
||||
%GV = load int** %G
|
||||
%GVe = getelementptr int* %GV, int 40
|
||||
store int 20, int* %GVe
|
||||
ret void
|
||||
}
|
||||
|
||||
int %get() {
|
||||
%GV = load int** %G
|
||||
%GVe = getelementptr int* %GV, int 40
|
||||
%V = load int* %GVe
|
||||
ret int %V
|
||||
}
|
Loading…
Reference in New Issue
Block a user