branch.isa (6242:1cee707c1228) branch.isa (6243:3a1698fbbc9f)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007-2008 The Florida State University
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

--- 220 unchanged lines hidden (view full) ---

229 inst_flags += (x, )
230
231 #Take into account uncond. branch instruction
232 if 'cond == 1' in code:
233 inst_flags += ('IsUnCondControl', )
234 else:
235 inst_flags += ('IsCondControl', )
236
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007-2008 The Florida State University
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

--- 220 unchanged lines hidden (view full) ---

229 inst_flags += (x, )
230
231 #Take into account uncond. branch instruction
232 if 'cond == 1' in code:
233 inst_flags += ('IsUnCondControl', )
234 else:
235 inst_flags += ('IsCondControl', )
236
237 icode = 'if (testPredicate(xc->readMiscReg(ArmISA::MISCREG_CPSR), condCode)) {\n'
237 icode = 'if (testPredicate(Cpsr, condCode)) {\n'
238 icode += code
239 icode += ' NPC = NPC + 4 + disp;\n'
240 icode += '} else {\n'
241 icode += ' NPC = NPC;\n'
242 icode += '};\n'
243
244 code = icode
245

--- 17 unchanged lines hidden (view full) ---

263 #Take into account uncond. branch instruction
264 if 'cond == 1' in code:
265 inst_flags += ('IsUnCondControl', )
266 else:
267 inst_flags += ('IsCondControl', )
268
269 #Condition code
270
238 icode += code
239 icode += ' NPC = NPC + 4 + disp;\n'
240 icode += '} else {\n'
241 icode += ' NPC = NPC;\n'
242 icode += '};\n'
243
244 code = icode
245

--- 17 unchanged lines hidden (view full) ---

263 #Take into account uncond. branch instruction
264 if 'cond == 1' in code:
265 inst_flags += ('IsUnCondControl', )
266 else:
267 inst_flags += ('IsCondControl', )
268
269 #Condition code
270
271 icode = 'if (testPredicate(xc->readMiscReg(ArmISA::MISCREG_CPSR), condCode)) {\n'
271 icode = 'if (testPredicate(Cpsr, condCode)) {\n'
272 icode += code
273 icode += ' NPC = Rm & 0xfffffffe; // Masks off bottom bit\n'
274 icode += '} else {\n'
275 icode += ' NPC = NPC;\n'
276 icode += '};\n'
277
278 code = icode
279

--- 28 unchanged lines hidden ---
272 icode += code
273 icode += ' NPC = Rm & 0xfffffffe; // Masks off bottom bit\n'
274 icode += '} else {\n'
275 icode += ' NPC = NPC;\n'
276 icode += '};\n'
277
278 code = icode
279

--- 28 unchanged lines hidden ---