u-boot-brain/arch
Bin Meng dd4611dea4 x86: Ensure no instruction sets of MMX/SSE are generated in 64-bit build
With the '-march=core2' fix, it seems that we have some luck that
the 64-bit U-Boot boots again. However if we examine the disassembly
codes there are still SSE instructions elsewhere which means passing
cpu type to GCC is not enough to prevent it from generating these
instructions. A simple test case is doing a 'bootefi selftest' from
the U-Boot shell and it leads to a reset too.

The 'bootefi selftest' reset is even seen with the image created by
the relative older GCC 5.4.0, the one shipped by Ubuntu 16.04.

The reset actually originates from undefined instruction exception
caused by these SSE instructions. To keep U-Boot as a bootloader as
simple as possible, we don't want to handle such advanced SIMD stuff.
To make sure no MMX/SSE instruction sets are generated, tell GCC not
to do this. Note AVX is out of the question as CORE2 is old enough
to support AVX yet.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
2018-10-22 17:51:45 +08:00
..
arc ARC: Don't use COMMON section for global not-initialized variables 2018-10-15 13:35:17 +03:00
arm Convert CONFIG_FLASH_CFI_DRIVER et al to Kconfig 2018-10-19 19:19:50 -04:00
m68k m68k: ColdFire mcf5441x, add eSDHC support 2018-09-16 00:01:13 +02:00
microblaze arch: types.h: factor out fixed width typedefs to int-ll64.h 2018-09-10 20:48:16 -04:00
mips mips: use asm-generic/atomic.h 2018-09-25 21:49:18 -04:00
nds32 config.mk: Remove duplicated -fno-strict-aliasing 2018-09-25 21:50:34 -04:00
nios2 .gitignore: move *.dtb and *.dtb.S patterns to the top-level .gitignore 2018-06-18 14:43:12 -04:00
powerpc powerpc: dts: Enable device tree support for T2080QDS 2018-09-27 10:14:14 -07:00
riscv riscv: allow native compilation 2018-10-03 17:49:44 +08:00
sandbox test: Add PCI device entry without compat string and with DT node 2018-10-20 15:23:38 -04:00
sh sh: tmu: Zap get_tbclk and timer_read_counter 2018-09-15 03:19:07 +02:00
x86 x86: Ensure no instruction sets of MMX/SSE are generated in 64-bit build 2018-10-22 17:51:45 +08:00
xtensa xtensa: use asm-generic/atomic.h 2018-09-25 21:49:18 -04:00
.gitignore
Kconfig Kconfig: sandbox: enable cmd_avb and dependencies 2018-10-07 13:34:19 -04:00