On 4/20/21 3:04 PM, David Hildenbrand wrote: > On 20.04.21 15:00, Claudio Fontana wrote: >> On 4/20/21 2:54 PM, David Hildenbrand wrote: >>> On 20.04.21 12:36, Claudio Fontana wrote: >>>> now that we protect all calls to the tcg-specific functions >>>> with if (tcg_enabled()), we do not need the TCG stub anymore. >>> >>> You need compile-time checks, not runtime checks. Any calls have to be >>> protected by #ifdef, otherwise the compiler might bail out. >> >> This is not true though, tcg_enabled() is #defined as 0 if tcg is not >> enabled. >> >> #define kvm_enabled() (0) >> >> Compiler will elide the code if after the preprocessor pass the code is: >> >> if (0) { >> } >> > > Just that we are talking about the same thing: > > The following will fail to compile > > void main(void) > { > if (0) { > return hello("Test"); > } > } > > You at least need the prototypes. But I guess we still keep them and > really only remove the stubs -- which works because the linker will > never stumble over them.
Yes, thjs is what I am saying. We have all the prototypes in sight, so we are good, no need to keep the stubs. Ciao, Claudio