mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-15 17:01:28 +00:00
Tweaks to compile the release build with clang. Now if it only would not
generate curious code like this one (Ubuntu 11.10's clang 2.9 on i386): 0x080a57ea <+538>: xor %al,%al 0x080a57ec <+540>: test %al,%al 0x080a57ee <+542>: jnz 0x80a57f2 <initgroupfile+546> => 0x080a57f0 <+544>: jmp 0x80a57f0 <initgroupfile+544> 0x080a57f2 <+546>: shl $0x4,%edi git-svn-id: https://svn.eduke32.com/eduke32@2182 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
df94c55eab
commit
8f92cb024d
3 changed files with 18 additions and 1 deletions
|
@ -78,7 +78,10 @@ endif
|
|||
|
||||
ifneq (0,$(RELEASE))
|
||||
# Debugging disabled
|
||||
debug=-funswitch-loops -O$(OPTLEVEL)
|
||||
debug=-O$(OPTLEVEL)
|
||||
ifneq ($(CC),clang)
|
||||
debug=-funswitch-loops
|
||||
endif
|
||||
ifeq (0,$(DEBUGANYWAY))
|
||||
debug+= -fomit-frame-pointer
|
||||
endif
|
||||
|
|
|
@ -1806,6 +1806,13 @@ int32_t checksectorpointer(int16_t i, int16_t sectnum)
|
|||
|
||||
#undef WALLS_ARE_CONSISTENT
|
||||
|
||||
#ifdef __clang__
|
||||
int32_t engine_dummy_function_to_keep_symbols(void)
|
||||
{
|
||||
return shlookup[0] | sqrtable[0];
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(_MSC_VER) && !defined(NOASM)
|
||||
|
||||
|
|
|
@ -188,6 +188,13 @@ static int32_t gotcmov = -2, abstab10[1024] ASMNAME("abstab10");
|
|||
static int32_t qhufval0[1<<LOGQHUFSIZ0], qhufval1[1<<LOGQHUFSIZ1];
|
||||
static uint8_t qhufbit0[1<<LOGQHUFSIZ0], qhufbit1[1<<LOGQHUFSIZ1];
|
||||
|
||||
#ifdef __clang__
|
||||
int32_t kplib_dummy_function_to_keep_symbols(void)
|
||||
{
|
||||
return abstab10[0] | trnsrgb;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER) && !defined(NOASM)
|
||||
|
||||
static _inline uint32_t bswap(uint32_t a)
|
||||
|
|
Loading…
Reference in a new issue