These testcases check to see if we can promote malloc's to globals in some
cases. llvm-svn: 16914
This commit is contained in:
parent
155cfd237b
commit
214956dd9d
@ -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
|
||||
}
|
||||
@ -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…
x
Reference in New Issue
Block a user