Skip to content
This repository was archived by the owner on May 21, 2019. It is now read-only.

Commit 72dcec0

Browse files
xen0nTimNN
authored andcommitted
Fix preprocessor directive for non-targeted platforms
The C preprocessor treats undefined identifiers in `#if` expressions as `0` except for `true` and `false`, so the additional expression for Linux-style MIPS ABIs actually turned to `0 == 0` for all other platforms where `_MIPS_SIM` is not defined. Fix that by explicitly checking for `_MIPS_SIM`'s presence.
1 parent 8435a73 commit 72dcec0

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

lib/builtins/int_lib.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
* does not have dedicated bit counting instructions.
8888
*/
8989
#if (defined(__sparc64__) || defined(__mips_n64) || defined(__mips_o64) || defined(__riscv__) \
90-
|| (_MIPS_SIM == _ABI64) || (_MIPS_SIM == _ABIO64))
90+
|| (defined(_MIPS_SIM) && ((_MIPS_SIM == _ABI64) || (_MIPS_SIM == _ABIO64))))
9191
si_int __clzsi2(si_int);
9292
si_int __ctzsi2(si_int);
9393
#define __builtin_clz __clzsi2

0 commit comments

Comments
 (0)