Leave x86emu op code tables in default section
authorEd Swarthout <Ed.Swarthout@freescale.com>
Thu, 9 Oct 2008 06:27:18 +0000 (01:27 -0500)
committerWolfgang Denk <wd@denx.de>
Mon, 12 Oct 2009 21:34:06 +0000 (23:34 +0200)
Forcing the tables into got2 caused extra relocation when using -mrelocatable.
This patch requires any board defining CONFIG_BIOSEMU to use -mrelocatable.

Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Acked-by: Jin Zhengxiong <Jason.Jin@freescale.com>
drivers/bios_emulator/x86emu/ops.c
drivers/bios_emulator/x86emu/ops2.c

index f884e9b03cd3e96e0be35ae8f05f247657710584..c836a20b15f869cf46cd58aae0bc052d8ee5e6b3 100644 (file)
@@ -70,9 +70,6 @@
 * calls is especially important; otherwise mistakes in coding an
 * "add" would represent a nightmare in maintenance.
 *
-* Jason ported this file to u-boot. place all the function pointer in
-* the got2 sector. Removed some opcode.
-*
 ****************************************************************************/
 
 #include <common.h>
@@ -88,7 +85,7 @@ static char *x86emu_GenOpName[8] = {
 #endif
 
 /* used by several opcodes  */
-static u8 (*genop_byte_operation[])(u8 d, u8 s) __attribute__ ((section(GOT2_TYPE))) =
+static u8 (*genop_byte_operation[])(u8 d, u8 s) =
 {
     add_byte,          /* 00 */
     or_byte,           /* 01 */
@@ -100,7 +97,7 @@ static u8 (*genop_byte_operation[])(u8 d, u8 s) __attribute__ ((section(GOT2_TYP
     cmp_byte,          /* 07 */
 };
 
-static u16 (*genop_word_operation[])(u16 d, u16 s) __attribute__ ((section(GOT2_TYPE))) =
+static u16 (*genop_word_operation[])(u16 d, u16 s) =
 {
     add_word,          /*00 */
     or_word,           /*01 */
@@ -112,7 +109,7 @@ static u16 (*genop_word_operation[])(u16 d, u16 s) __attribute__ ((section(GOT2_
     cmp_word,          /*07 */
 };
 
-static u32 (*genop_long_operation[])(u32 d, u32 s) __attribute__ ((section(GOT2_TYPE))) =
+static u32 (*genop_long_operation[])(u32 d, u32 s) =
 {
     add_long,          /*00 */
     or_long,           /*01 */
@@ -125,7 +122,7 @@ static u32 (*genop_long_operation[])(u32 d, u32 s) __attribute__ ((section(GOT2_
 };
 
 /* used by opcodes 80, c0, d0, and d2. */
-static u8(*opcD0_byte_operation[])(u8 d, u8 s) __attribute__ ((section(GOT2_TYPE))) =
+static u8(*opcD0_byte_operation[])(u8 d, u8 s) =
 {
     rol_byte,
     ror_byte,
@@ -138,7 +135,7 @@ static u8(*opcD0_byte_operation[])(u8 d, u8 s) __attribute__ ((section(GOT2_TYPE
 };
 
 /* used by opcodes c1, d1, and d3. */
-static u16(*opcD1_word_operation[])(u16 s, u8 d) __attribute__ ((section(GOT2_TYPE))) =
+static u16(*opcD1_word_operation[])(u16 s, u8 d) =
 {
     rol_word,
     ror_word,
@@ -151,7 +148,7 @@ static u16(*opcD1_word_operation[])(u16 s, u8 d) __attribute__ ((section(GOT2_TY
 };
 
 /* used by opcodes c1, d1, and d3. */
-static u32 (*opcD1_long_operation[])(u32 s, u8 d) __attribute__ ((section(GOT2_TYPE))) =
+static u32 (*opcD1_long_operation[])(u32 s, u8 d) =
 {
     rol_long,
     ror_long,
@@ -5144,7 +5141,7 @@ void x86emuOp_opcFF_word_RM(u8 X86EMU_UNUSED(op1))
 /***************************************************************************
  * Single byte operation code table:
  **************************************************************************/
-void (*x86emu_optab[256])(u8) __attribute__ ((section(GOT2_TYPE))) =
+void (*x86emu_optab[256])(u8) =
 {
 /*  0x00 */ x86emuOp_genop_byte_RM_R,
 /*  0x01 */ x86emuOp_genop_word_RM_R,
index ee7258e7581b6f2bc7f4d92c9cba28ff53bfdc3a..937bf4ce0732b8f683db0bce5b078081e6aef71d 100644 (file)
@@ -39,9 +39,6 @@
 *              and emulation of all the x86 extended two-byte processor
 *              instructions.
 *
-*              Jason port this file to u-boot. Put the function pointer into
-*              got2 sector.
-*
 ****************************************************************************/
 
 #include <common.h>
@@ -1495,7 +1492,7 @@ void x86emuOp2_movsx_word_R_RM(u8 X86EMU_UNUSED(op2))
 /***************************************************************************
  * Double byte operation code table:
  **************************************************************************/
-void (*x86emu_optab2[256])(u8) __attribute__((section(GOT2_TYPE))) =
+void (*x86emu_optab2[256])(u8) =
 {
 /*  0x00 */ x86emuOp2_illegal_op,  /* Group F (ring 0 PM)      */
 /*  0x01 */ x86emuOp2_illegal_op,  /* Group G (ring 0 PM)      */