Testcases to show what -funcresolve does.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2744 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2002-05-24 21:27:41 +00:00
parent 76ec6e1dcc
commit 77ff8fa9f9
4 changed files with 70 additions and 0 deletions

View 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) $<

View File

@ -0,0 +1,15 @@
; RUN: if as < %s | opt -funcresolve | dis | grep '\.\.\.' | grep call
; RUN: then exit 1
; RUN: else exit 0
; RUN: fi
declare int %foo(...)
int %foo(int %x, float %y) {
ret int %x
}
int %bar() {
%x = call int(...)* %foo(double 12.5, int 48)
ret int %x
}

View File

@ -0,0 +1,22 @@
; This shows where the function is called with the prototype indicating a
; return type exists, but it really doesn't.
; RUN: if as < %s | opt -funcresolve
; RUN: then echo "opt ok"
; RUN: else exit 1 # Make sure opt doesn't abort!
; RUN: fi
;
; RUN: if as < %s | opt -funcresolve | dis | grep '\.\.\.' | grep call
; RUN: then exit 1
; RUN: else exit 0
; RUN: fi
declare int %foo(...)
void %foo(int %x, float %y) {
ret void
}
int %bar() {
%x = call int(...)* %foo(double 12.5, int 48)
ret int %x
}

View File

@ -0,0 +1,23 @@
; This shows where the function is called with the prototype indicating a
; return type doesn't exists, but it really does.
;
; RUN: if as < %s | opt -funcresolve
; RUN: then echo "opt ok"
; RUN: else exit 1 # Make sure opt doesn't abort!
; RUN: fi
;
; RUN: if as < %s | opt -funcresolve | dis | grep '\.\.\.' | grep call
; RUN: then exit 1
; RUN: else exit 0
; RUN: fi
declare void %foo(...)
int %foo(int %x, float %y) {
ret int %x
}
int %bar() {
call void (...)* %foo(double 12.5, int 48)
ret int 6
}