If you call a function that doens't exist, the program still compiles however it seems calling any function does nothing.
Here is a repro
define public @"testBad()"() {
entry:
// note that there is no function called foo in this contract
%temp = call @foo()
}
define public @"getVal()"() {
entry:
// calling this function returns nothing
ret 0x0100
}
define @init() {
entry:
ret void
}
}