From 9f0d4ed2c9e50b52bd1daf7740585079fd1fd3a2 Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Mon, 13 May 2019 17:46:59 +0200 Subject: [PATCH 1/4] Fixes PPC tbegin printing --- arch/PowerPC/PPCGenAsmWriter.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/PowerPC/PPCGenAsmWriter.inc b/arch/PowerPC/PPCGenAsmWriter.inc index 4f480de529..b7ab6e7f70 100644 --- a/arch/PowerPC/PPCGenAsmWriter.inc +++ b/arch/PowerPC/PPCGenAsmWriter.inc @@ -6047,7 +6047,7 @@ static void printInstruction(MCInst *MI, SStream *O) break; case 18: // TBEGIN, TEND, TSR, XSRQPI, XSRQPIX, XSRQPXP - printU1ImmOperand(MI, 1, O); + printU1ImmOperand(MI, 0, O); break; case 19: // gBCAat, gBCLAat, gBCLat, gBCat From f5a63a340f08fb7b329e28bd418443718fcb535a Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Tue, 14 May 2019 20:56:26 +0200 Subject: [PATCH 2/4] Fix td file before regenerating inc files --- suite/synctools/tablegen/PPC/PPCInstrHTM.td | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/suite/synctools/tablegen/PPC/PPCInstrHTM.td b/suite/synctools/tablegen/PPC/PPCInstrHTM.td index 6c4e212908..9b0dc6b016 100644 --- a/suite/synctools/tablegen/PPC/PPCInstrHTM.td +++ b/suite/synctools/tablegen/PPC/PPCInstrHTM.td @@ -28,7 +28,7 @@ def TCHECK_RET : Pseudo<(outs crrc:$out), (ins), "#TCHECK_RET", []>; let Predicates = [HasHTM] in { def TBEGIN : XForm_htm0 <31, 654, - (outs crrc0:$ret), (ins u1imm:$R), "tbegin. $R", IIC_SprMTSPR, []>; + (outs), (ins u1imm:$R), "tbegin. $R", IIC_SprMTSPR, []>; def TEND : XForm_htm1 <31, 686, (outs crrc0:$ret), (ins u1imm:$A), "tend. $A", IIC_SprMTSPR, []>; From 70bdf9c15236b95ac5d0e6c53ee190ee3569567d Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Tue, 14 May 2019 21:36:43 +0200 Subject: [PATCH 3/4] adds CR0 def for tbegin --- suite/synctools/tablegen/PPC/PPCInstrHTM.td | 1 + 1 file changed, 1 insertion(+) diff --git a/suite/synctools/tablegen/PPC/PPCInstrHTM.td b/suite/synctools/tablegen/PPC/PPCInstrHTM.td index 9b0dc6b016..d413d66175 100644 --- a/suite/synctools/tablegen/PPC/PPCInstrHTM.td +++ b/suite/synctools/tablegen/PPC/PPCInstrHTM.td @@ -27,6 +27,7 @@ def TCHECK_RET : Pseudo<(outs crrc:$out), (ins), "#TCHECK_RET", []>; let Predicates = [HasHTM] in { +let Defs = [CR0] in def TBEGIN : XForm_htm0 <31, 654, (outs), (ins u1imm:$R), "tbegin. $R", IIC_SprMTSPR, []>; From 834539da546c753d2409daaecce1ebb69071f017 Mon Sep 17 00:00:00 2001 From: Philippe Antoine Date: Thu, 16 May 2019 20:44:42 +0200 Subject: [PATCH 4/4] Revert "Fixes PPC tbegin printing" This reverts commit 9f0d4ed2c9e50b52bd1daf7740585079fd1fd3a2. --- arch/PowerPC/PPCGenAsmWriter.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/PowerPC/PPCGenAsmWriter.inc b/arch/PowerPC/PPCGenAsmWriter.inc index b7ab6e7f70..4f480de529 100644 --- a/arch/PowerPC/PPCGenAsmWriter.inc +++ b/arch/PowerPC/PPCGenAsmWriter.inc @@ -6047,7 +6047,7 @@ static void printInstruction(MCInst *MI, SStream *O) break; case 18: // TBEGIN, TEND, TSR, XSRQPI, XSRQPIX, XSRQPXP - printU1ImmOperand(MI, 0, O); + printU1ImmOperand(MI, 1, O); break; case 19: // gBCAat, gBCLAat, gBCLat, gBCat