new test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6399
91177308-0d34-0410-b5e6-
96231b3b80d8
TESTS := $(wildcard *.ll)
-all:: $(addprefix Output/, $(TESTS:%.ll=%.ibc))
-
-Output/%.ibc: %.ll Output/.dir $(LOPT)
- ($(LAS) < $< | $(LOPT) -inline -q -f -o $@) || \
- ( rm -f $@; $(FAILURE) $@ )
+all:: $(addprefix Output/, $(TESTS:%.ll=%.ll.out))
+Output/%.ll.out: %.ll Output/.dir $(LOPT)
+ -$(TESTRUNR) $<
--- /dev/null
+; This test ensures that alloca instructions in the entry block for an inlined
+; function are moved to the top of the function they are inlined into.
+;
+; RUN: as < %s | opt -inline | dis | grep -C 1 alloca | grep Entry:
+
+int %func(int %i) {
+ %X = alloca int
+ ret int %i
+}
+
+declare void %bar()
+
+int %main(int %argc) {
+Entry:
+ call void %bar()
+ %X = call int %func(int 7)
+ %Y = add int %X, %argc
+ ret int %Y
+}
-
+; RUN: as < %s | opt -inline -disable-output -print
int %func(int %i) {
ret int %i