summaryrefslogtreecommitdiff
path: root/test/CodeGen/CBackend/2004-11-13-FunctionPointerCast.ll
blob: af8f441c2229bcea8e2950dd7e51cf0b40234230 (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: llc < %s -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
}