tegra: disable more lowlevel unsafe switch optimizations
fno-jump-tables isn't enough to guard against gcc switch optimizations that are unsafe to use in code that runs before relocation. The switch-tree-conversion opt pass may generate lookup tables that are placed in the data section and accessed via absolute adressing, which fails prior to relocation. Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
47ed904495
commit
bd4cbd927c
|
@ -1,2 +1,4 @@
|
||||||
CFLAGS_pbl-entry.o := -mcpu=arm7tdmi -march=armv4t
|
CFLAGS_pbl-entry.o := \
|
||||||
|
-mcpu=arm7tdmi -march=armv4t \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
lwl-y += entry.o
|
lwl-y += entry.o
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
CFLAGS_pbl-entry.o := -mcpu=arm7tdmi -march=armv4t
|
CFLAGS_pbl-entry.o := \
|
||||||
|
-mcpu=arm7tdmi -march=armv4t \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
lwl-y += entry.o
|
lwl-y += entry.o
|
||||||
obj-y += board.o
|
obj-y += board.o
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
CFLAGS_tegra_avp_init.o := -mcpu=arm7tdmi -march=armv4t -fno-jump-tables
|
CFLAGS_tegra_avp_init.o := \
|
||||||
CFLAGS_pbl-tegra_avp_init.o := -mcpu=arm7tdmi -march=armv4t -fno-jump-tables
|
-mcpu=arm7tdmi -march=armv4t \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
|
CFLAGS_pbl-tegra_avp_init.o := \
|
||||||
|
-mcpu=arm7tdmi -march=armv4t \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
|
CFLAGS_tegra_maincomplex_init.o := \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
|
CFLAGS_pbl-tegra_maincomplex_init.o := \
|
||||||
|
-fno-tree-switch-conversion -fno-jump-tables
|
||||||
lwl-y += tegra_avp_init.o
|
lwl-y += tegra_avp_init.o
|
||||||
lwl-y += tegra_maincomplex_init.o
|
lwl-y += tegra_maincomplex_init.o
|
||||||
obj-y += tegra20.o
|
obj-y += tegra20.o
|
||||||
|
|
Loading…
Reference in New Issue