diff options
author | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 08:40:57 -0400 |
---|---|---|
committer | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 08:40:57 -0400 |
commit | 1fcbe027b5d29ec9cd0eeb753c14fb366ae852ac (patch) | |
tree | b0d80646567ac71238cf2ffb33e29ad33d758816 /arch/tile/kernel/traps.c | |
parent | 32020effaf713c0c669864301bcd5dac6b9bb9e0 (diff) | |
download | blackbird-op-linux-1fcbe027b5d29ec9cd0eeb753c14fb366ae852ac.tar.gz blackbird-op-linux-1fcbe027b5d29ec9cd0eeb753c14fb366ae852ac.zip |
arch/tile: support backtracing on TILE-Gx
This functionality was stubbed out until recently. Now we support our
normal backtracing API on TILE-Gx as well as on TILE64/TILEPro.
This change includes a tweak to the instruction encoding caused by
adding addxli for compat mode.
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile/kernel/traps.c')
-rw-r--r-- | arch/tile/kernel/traps.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/tile/kernel/traps.c b/arch/tile/kernel/traps.c index 3870abbeeaa2..0f362dc2c57f 100644 --- a/arch/tile/kernel/traps.c +++ b/arch/tile/kernel/traps.c @@ -128,7 +128,9 @@ static int special_ill(bundle_bits bundle, int *sigp, int *codep) #ifdef __tilegx__ if ((bundle & TILEGX_BUNDLE_MODE_MASK) != 0) return 0; - if (get_Opcode_X1(bundle) != UNARY_OPCODE_X1) + if (get_Opcode_X1(bundle) != RRR_0_OPCODE_X1) + return 0; + if (get_RRROpcodeExtension_X1(bundle) != UNARY_RRR_0_OPCODE_X1) return 0; if (get_UnaryOpcodeExtension_X1(bundle) != ILL_UNARY_OPCODE_X1) return 0; |