; 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-upgrade < %s | llvm-as | llc -march=c 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 }