18 lines
389 B
Plaintext
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
|
|
}
|
|
|
|
|
|
|
|
|