| # ========================================================================== |
| # Build system |
| # ========================================================================== |
| |
| # Allow i486 insns (basically, bswap insn) |
| # Do not try to tune for 486+ (might add padding) |
| CFLAGS += $(call cc-option,-march=i486 -mtune=i386,) |
| |
| ifeq ($(CONFIG_STACK_OPTIMIZATION_386),y) |
| # -mpreferred-stack-boundary=2 is essential in preventing gcc 4.2.x |
| # from aligning stack to 16 bytes. (Which is gcc's way of supporting SSE). |
| CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2,) |
| endif |
| |
| # "Control how GCC aligns variables. |
| # Supported values for type are compat uses increased alignment value |
| # compatible uses GCC 4.8 and earlier, abi uses alignment value as specified by the psABI, |
| # and cacheline uses increased alignment value to match the cache line size. |
| # compat is the default." |
| # "abi" seems to be somewhat successful in preventing oversealous data alignment. |
| CFLAGS += $(call cc-option,-malign-data=abi,) |