diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2011-09-19 06:14:02 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2011-09-19 06:14:02 -0700 |
commit | f21ae529fb56592a7557a6583e68d8aae0d64adc (patch) | |
tree | 5bca6c6c615faea84c67c8dcb089c3b46f219597 /src/arch/mips/isa/formats/mem.isa | |
parent | 4ad36a4684c554bce2c9e3780f51c58195fe8205 (diff) | |
download | gem5-f21ae529fb56592a7557a6583e68d8aae0d64adc.tar.xz |
MIPS: Get rid of #if style config checks in the ISA description.
Diffstat (limited to 'src/arch/mips/isa/formats/mem.isa')
-rw-r--r-- | src/arch/mips/isa/formats/mem.isa | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/arch/mips/isa/formats/mem.isa b/src/arch/mips/isa/formats/mem.isa index bc3a2b3ce..22296bc3b 100644 --- a/src/arch/mips/isa/formats/mem.isa +++ b/src/arch/mips/isa/formats/mem.isa @@ -542,12 +542,13 @@ def format StoreFPIndexedMemory(memacc_code, ea_code = {{ EA = Rs + Rt; }}, def format LoadUnalignedMemory(memacc_code, ea_code = {{ EA = (Rs + disp) & ~3; }}, mem_flags = [], inst_flags = []) {{ - decl_code = 'uint32_t mem_word = Mem.uw;\n' - decl_code += 'uint32_t unalign_addr = Rs + disp;\n' - decl_code += 'uint32_t byte_offset = unalign_addr & 3;\n' - decl_code += '#if BYTE_ORDER == BIG_ENDIAN\n' - decl_code += '\tbyte_offset ^= 3;\n' - decl_code += '#endif\n' + decl_code = ''' + uint32_t mem_word = Mem.uw; + uint32_t unalign_addr = Rs + disp; + uint32_t byte_offset = unalign_addr & 3; + if (GuestByteOrder == BigEndianByteOrder) + byte_offset ^= 3; + ''' memacc_code = decl_code + memacc_code @@ -563,9 +564,8 @@ def format StoreUnalignedMemory(memacc_code, ea_code = {{ EA = (Rs + disp) & ~3; uint32_t mem_word = 0; uint32_t unaligned_addr = Rs + disp; uint32_t byte_offset = unaligned_addr & 3; - #if BYTE_ORDER == BIG_ENDIAN + if (GuestByteOrder == BigEndianByteOrder) byte_offset ^= 3; - #endif fault = readMemAtomic(xc, traceData, EA, mem_word, memAccessFlags); ''' memacc_code = decl_code + memacc_code + '\nMem = mem_word;\n' |