aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/CBackend/2004-11-13-FunctionPointerCast.ll
blob: a8ee438cc431d85358bf0e103c6513a86dc43bd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
; The CBE should not emit code that casts the function pointer.  This causes
; GCC to get testy and insert trap instructions instead of doing the right
; thing. :(
; RUN: llvm-as < %s | llc -march=c

declare void @external(i8*)

define i32 @test(i32* %X) {
        %RV = call i32 bitcast (void (i8*)* @external to i32 (i32*)*)( i32* %X )                ; <i32> [#uses=1]
        ret i32 %RV
}