mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Initial testcases for scalar replacement of aggregates pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6347 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ed7b41ea90
commit
016d7b9ed8
10
test/Transforms/ScalarRepl/Makefile
Normal file
10
test/Transforms/ScalarRepl/Makefile
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
LEVEL = ../../../..
|
||||
include $(LEVEL)/test/Makefile.tests
|
||||
|
||||
TESTS := $(wildcard *.ll)
|
||||
|
||||
all:: $(addprefix Output/, $(TESTS:%.ll=%.ll.out))
|
||||
|
||||
Output/%.ll.out: %.ll Output/.dir $(LOPT)
|
||||
-$(TESTRUNR) $<
|
13
test/Transforms/ScalarRepl/arraytest.ll
Normal file
13
test/Transforms/ScalarRepl/arraytest.ll
Normal file
@ -0,0 +1,13 @@
|
||||
; RUN: if as < %s | opt -scalarrepl -mem2reg | dis | grep alloca
|
||||
; RUN: then exit 1
|
||||
; RUN: else exit 0
|
||||
; RUN: fi
|
||||
|
||||
int %test() {
|
||||
%X = alloca [ 4 x int ]
|
||||
%Y = getelementptr [4x int]* %X, long 0, long 0
|
||||
store int 0, int* %Y
|
||||
|
||||
%Z = load int* %Y
|
||||
ret int %Z
|
||||
}
|
10
test/Transforms/ScalarRepl/badarray.ll
Normal file
10
test/Transforms/ScalarRepl/badarray.ll
Normal file
@ -0,0 +1,10 @@
|
||||
; RUN: as < %s | opt -scalarrepl -mem2reg | dis | grep alloca
|
||||
|
||||
int %test() {
|
||||
%X = alloca [ 4 x int ]
|
||||
%Y = getelementptr [4x int]* %X, long 0, long 6 ; Off end of array!
|
||||
store int 0, int* %Y
|
||||
|
||||
%Z = load int* %Y
|
||||
ret int %Z
|
||||
}
|
13
test/Transforms/ScalarRepl/basictest.ll
Normal file
13
test/Transforms/ScalarRepl/basictest.ll
Normal file
@ -0,0 +1,13 @@
|
||||
; RUN: if as < %s | opt -scalarrepl -mem2reg | dis | grep alloca
|
||||
; RUN: then exit 1
|
||||
; RUN: else exit 0
|
||||
; RUN: fi
|
||||
|
||||
int %test() {
|
||||
%X = alloca { int, float }
|
||||
%Y = getelementptr {int,float}* %X, long 0, ubyte 0
|
||||
store int 0, int* %Y
|
||||
|
||||
%Z = load int* %Y
|
||||
ret int %Z
|
||||
}
|
Loading…
Reference in New Issue
Block a user