Upstream-Status: Pending Add support for FSL PowerPC e5500 core. Signed-off-by: Edmar Wienskoski Signed-off-by: Kumar Gala Index: binutils-2.22/bfd/archures.c =================================================================== --- binutils-2.22.orig/bfd/archures.c +++ binutils-2.22/bfd/archures.c @@ -239,6 +239,7 @@ DESCRIPTION .#define bfd_mach_ppc_e500 500 .#define bfd_mach_ppc_e500mc 5001 .#define bfd_mach_ppc_e500mc64 5005 +.#define bfd_mach_ppc_e5500 5006 .#define bfd_mach_ppc_titan 83 . bfd_arch_rs6000, {* IBM RS/6000 *} .#define bfd_mach_rs6k 6000 Index: binutils-2.22/bfd/bfd-in2.h =================================================================== --- binutils-2.22.orig/bfd/bfd-in2.h +++ binutils-2.22/bfd/bfd-in2.h @@ -1946,6 +1946,7 @@ enum bfd_architecture #define bfd_mach_ppc_e500 500 #define bfd_mach_ppc_e500mc 5001 #define bfd_mach_ppc_e500mc64 5005 +#define bfd_mach_ppc_e5500 5006 #define bfd_mach_ppc_titan 83 bfd_arch_rs6000, /* IBM RS/6000 */ #define bfd_mach_rs6k 6000 Index: binutils-2.22/bfd/cpu-powerpc.c =================================================================== --- binutils-2.22.orig/bfd/cpu-powerpc.c +++ binutils-2.22/bfd/cpu-powerpc.c @@ -352,6 +352,20 @@ const bfd_arch_info_type bfd_powerpc_arc FALSE, /* not the default */ powerpc_compatible, bfd_default_scan, + &bfd_powerpc_archs[19] + }, + { + 64, /* 64 bits in a word */ + 64, /* 64 bits in an address */ + 8, /* 8 bits in a byte */ + bfd_arch_powerpc, + bfd_mach_ppc_e5500, + "powerpc", + "powerpc:e5500", + 3, + FALSE, /* not the default */ + powerpc_compatible, + bfd_default_scan, 0 } }; Index: binutils-2.22/gas/config/tc-ppc.c =================================================================== --- binutils-2.22.orig/gas/config/tc-ppc.c +++ binutils-2.22/gas/config/tc-ppc.c @@ -1265,6 +1265,7 @@ PowerPC options:\n\ -me500, -me500x2 generate code for Motorola e500 core complex\n\ -me500mc, generate code for Freescale e500mc core complex\n\ -me500mc64, generate code for Freescale e500mc64 core complex\n\ +-me5500, generate code for Freescale e5500 core complex\n\ -mspe generate code for Motorola SPE instructions\n\ -mtitan generate code for AppliedMicro Titan core complex\n\ -mregnames Allow symbolic names for registers\n\ Index: binutils-2.22/gas/doc/as.texinfo =================================================================== --- binutils-2.22.orig/gas/doc/as.texinfo +++ binutils-2.22/gas/doc/as.texinfo @@ -434,7 +434,7 @@ gcc(1), ld(1), and the Info entries for [@b{-a32}|@b{-a64}] [@b{-mpwrx}|@b{-mpwr2}|@b{-mpwr}|@b{-m601}|@b{-mppc}|@b{-mppc32}|@b{-m603}|@b{-m604}|@b{-m403}|@b{-m405}| @b{-m440}|@b{-m464}|@b{-m476}|@b{-m7400}|@b{-m7410}|@b{-m7450}|@b{-m7455}|@b{-m750cl}|@b{-mppc64}| - @b{-m620}|@b{-me500}|@b{-e500x2}|@b{-me500mc}|@b{-me500mc64}|@b{-mppc64bridge}|@b{-mbooke}| + @b{-m620}|@b{-me500}|@b{-e500x2}|@b{-me500mc}|@b{-me500mc64}|@b{-me5500}|@b{-mppc64bridge}|@b{-mbooke}| @b{-mpower4}|@b{-mpr4}|@b{-mpower5}|@b{-mpwr5}|@b{-mpwr5x}|@b{-mpower6}|@b{-mpwr6}| @b{-mpower7}|@b{-mpw7}|@b{-ma2}|@b{-mcell}|@b{-mspe}|@b{-mtitan}|@b{-me300}|@b{-mcom}] [@b{-many}] [@b{-maltivec}|@b{-mvsx}] Index: binutils-2.22/gas/doc/c-ppc.texi =================================================================== --- binutils-2.22.orig/gas/doc/c-ppc.texi +++ binutils-2.22/gas/doc/c-ppc.texi @@ -88,6 +88,9 @@ Generate code for Freescale e500mc core @item -me500mc64 Generate code for Freescale e500mc64 core complex. +@item -me5500 +Generate code for Freescale e5500 core complex. + @item -mspe Generate code for Motorola SPE instructions. Index: binutils-2.22/opcodes/ppc-dis.c =================================================================== --- binutils-2.22.orig/opcodes/ppc-dis.c +++ binutils-2.22/opcodes/ppc-dis.c @@ -114,6 +114,12 @@ struct ppc_mopt ppc_opts[] = { | PPC_OPCODE_E500MC | PPC_OPCODE_64 | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6 | PPC_OPCODE_POWER7), 0 }, + { "e5500", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_ISEL + | PPC_OPCODE_PMR | PPC_OPCODE_CACHELCK | PPC_OPCODE_RFMCI + | PPC_OPCODE_E500MC | PPC_OPCODE_64 | PPC_OPCODE_POWER4 + | PPC_OPCODE_POWER5 | PPC_OPCODE_POWER6 + | PPC_OPCODE_POWER7), + 0 }, { "e500x2", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_SPE | PPC_OPCODE_ISEL | PPC_OPCODE_EFS | PPC_OPCODE_BRLOCK | PPC_OPCODE_PMR | PPC_OPCODE_CACHELCK | PPC_OPCODE_RFMCI