hanchenye-llvm-project/llvm/test/Regression/CodeGen/CBackend/2004-11-13-FunctionPointerC...

18 lines
389 B
Plaintext

; 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 | not grep 'external)'
implementation
declare void %external(sbyte*)
int %test(int *%X) {
%RV = call int (int*)* cast (void(sbyte*)* %external to int(int*)*)(int* %X)
ret int %RV
}