projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
SPARC NCG: Keep track of destinations when doing a tabled jump
[ghc-hetmet.git]
/
compiler
/
nativeGen
/
MachInstrs.hs
diff --git
a/compiler/nativeGen/MachInstrs.hs
b/compiler/nativeGen/MachInstrs.hs
index
e16dbf3
..
529da0d
100644
(file)
--- a/
compiler/nativeGen/MachInstrs.hs
+++ b/
compiler/nativeGen/MachInstrs.hs
@@
-609,6
+609,13
@@
is_G_instr instr
| BF Cond Bool BlockId -- cond, annul?, target
| JMP AddrMode -- target
| BF Cond Bool BlockId -- cond, annul?, target
| JMP AddrMode -- target
+
+ -- With a tabled jump we know all the possible destinations. Tabled
+ -- jump includes its list of destinations so we can work out what regs
+ -- are live across the jump.
+ --
+ | JMP_TBL AddrMode [BlockId]
+
| CALL (Either Imm Reg) Int Bool -- target, args, terminal
riZero :: RI -> Bool
| CALL (Either Imm Reg) Int Bool -- target, args, terminal
riZero :: RI -> Bool