diff options
Diffstat (limited to 'arch/arm/kernel/vmlinux.lds.S')
-rw-r--r-- | arch/arm/kernel/vmlinux.lds.S | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S index 1602373e539c..c90f27250ead 100644 --- a/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S | |||
@@ -82,6 +82,8 @@ SECTIONS | |||
82 | EXIT_TEXT | 82 | EXIT_TEXT |
83 | EXIT_DATA | 83 | EXIT_DATA |
84 | *(.exitcall.exit) | 84 | *(.exitcall.exit) |
85 | *(.ARM.exidx.exit.text) | ||
86 | *(.ARM.extab.exit.text) | ||
85 | #ifndef CONFIG_MMU | 87 | #ifndef CONFIG_MMU |
86 | *(.fixup) | 88 | *(.fixup) |
87 | *(__ex_table) | 89 | *(__ex_table) |
@@ -112,6 +114,23 @@ SECTIONS | |||
112 | 114 | ||
113 | _etext = .; /* End of text and rodata section */ | 115 | _etext = .; /* End of text and rodata section */ |
114 | 116 | ||
117 | #ifdef CONFIG_ARM_UNWIND | ||
118 | /* | ||
119 | * Stack unwinding tables | ||
120 | */ | ||
121 | . = ALIGN(8); | ||
122 | .ARM.unwind_idx : { | ||
123 | __start_unwind_idx = .; | ||
124 | *(.ARM.exidx*) | ||
125 | __stop_unwind_idx = .; | ||
126 | } | ||
127 | .ARM.unwind_tab : { | ||
128 | __start_unwind_tab = .; | ||
129 | *(.ARM.extab*) | ||
130 | __stop_unwind_tab = .; | ||
131 | } | ||
132 | #endif | ||
133 | |||
115 | #ifdef CONFIG_XIP_KERNEL | 134 | #ifdef CONFIG_XIP_KERNEL |
116 | __data_loc = ALIGN(4); /* location in binary */ | 135 | __data_loc = ALIGN(4); /* location in binary */ |
117 | . = PAGE_OFFSET + TEXT_OFFSET; | 136 | . = PAGE_OFFSET + TEXT_OFFSET; |