From 25f82bc26bbf783d72af76f235681789644789d6 Mon Sep 17 00:00:00 2001 From: Richard Patel Date: Tue, 24 Aug 2021 02:40:58 +0200 Subject: [PATCH] isa.yaml: correct uses or rA zero special case --- disasm/src/isa.yaml | 110 ++++++++++++++++++++++---------------------- 1 file changed, 55 insertions(+), 55 deletions(-) diff --git a/disasm/src/isa.yaml b/disasm/src/isa.yaml index 034ad4d..f5560cb 100644 --- a/disasm/src/isa.yaml +++ b/disasm/src/isa.yaml @@ -32,7 +32,7 @@ opcodes: pattern: 0x38000000 args: [ "rD", "rA", "simm" ] defs: [ "rD" ] - uses: [ "rA" ] + uses: [ "rA.nz" ] - name: "addic" desc: "Add Immediate Carrying" @@ -58,7 +58,7 @@ opcodes: args: [ "rD", "rA", "uimm" ] side_effects: [ "Rc" ] defs: [ "rD" ] - uses: [ "rA" ] + uses: [ "rA.nz" ] - name: "addme" desc: "Add to Minus One Extended" @@ -254,49 +254,49 @@ opcodes: bitmask: 0xffe007ff pattern: 0x7c0000ac args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbi" desc: "Data Cache Block Invalidate" bitmask: 0xffe007ff pattern: 0x7c0003ac args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbst" desc: "Data Cache Block Store" bitmask: 0xffe007ff pattern: 0x7c00006c args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbt" desc: "Data Cache Block Touch" bitmask: 0xffe007ff pattern: 0x7c00022c args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbtst" desc: "Data Cache Block Touch for Store" bitmask: 0xffe007ff pattern: 0x7c0001ec args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbz" desc: "Data Cache Block Clear to Zero" bitmask: 0xffe007ff pattern: 0x7c0007ec args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "dcbz_l" desc: "Data Cache Block Set to Zero Locked" bitmask: 0xffe007ff pattern: 0x100007ec args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "divw" desc: "Divide Word" @@ -322,14 +322,14 @@ opcodes: pattern: 0x7c00026c args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "ecowx" desc: "External Control Out Word Indexed" bitmask: 0xfc0003ff pattern: 0x7c00036c args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "eieio" desc: "Enforce In-Order Execution of I/O" @@ -619,7 +619,7 @@ opcodes: pattern: 0x7c0007ac modifiers: [ "Rc" ] args: [ "rA", "rB" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "isync" desc: "Instruction Synchronize" @@ -632,7 +632,7 @@ opcodes: pattern: 0x88000000 args: [ "rD", "offset", "rA" ] defs: [ "rD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lbzu" desc: "Load Byte and Zero with Update" @@ -656,7 +656,7 @@ opcodes: pattern: 0x7c0000ae args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lfd" desc: "Load Floating-Point Double" @@ -664,7 +664,7 @@ opcodes: pattern: 0xc8000000 args: [ "frD", "offset", "rA" ] defs: [ "frD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lfdu" desc: "Load Floating-Point Double with Update" @@ -688,7 +688,7 @@ opcodes: pattern: 0x7c00045e args: [ "frD", "rA", "rB" ] defs: [ "frD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lfs" desc: "Load Floating-Point Single" @@ -696,7 +696,7 @@ opcodes: pattern: 0xc0000000 args: [ "frD", "offset", "rA" ] defs: [ "frD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lfsu" desc: "Load Floating-Point Single with Update" @@ -720,7 +720,7 @@ opcodes: pattern: 0x7c00042e args: [ "frD", "rA", "rB" ] defs: [ "frD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lha" desc: "Load Half Word Algebraic" @@ -728,7 +728,7 @@ opcodes: pattern: 0xa8000000 args: [ "rD", "offset", "rA" ] defs: [ "rD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lhau" desc: "Load Half Word Algebraic with Update" @@ -752,7 +752,7 @@ opcodes: pattern: 0x7c0002ae args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lhbrx" desc: "Load Half Word Byte-Reverse Indexed" @@ -760,7 +760,7 @@ opcodes: pattern: 0x7c00062c args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lhz" desc: "Load Half Word and Zero" @@ -768,7 +768,7 @@ opcodes: pattern: 0xa0000000 args: [ "rD", "offset", "rA" ] defs: [ "rD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lhzu" desc: "Load Half Word and Zero with Update" @@ -792,7 +792,7 @@ opcodes: pattern: 0x7c00022e args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] # TODO lmw has much more defs - name: "lmw" @@ -801,7 +801,7 @@ opcodes: pattern: 0xb8000000 args: [ "rD", "offset", "rA" ] defs: [ "rD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lswi" desc: "Load String Word Immediate" @@ -809,7 +809,7 @@ opcodes: pattern: 0x7c0004aa args: [ "rD", "rA", "NB" ] defs: [ "rD" ] - uses: [ "rA" ] + uses: [ "rA.nz" ] - name: "lswx" desc: "Load String Word Indexed" @@ -817,7 +817,7 @@ opcodes: pattern: 0x7c00042a args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lwarx" desc: "Load String Word and Reverse Indexed" @@ -825,7 +825,7 @@ opcodes: pattern: 0x7c000028 args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lwbrx" desc: "Load String Word and Byte-Reverse Indexed" @@ -833,7 +833,7 @@ opcodes: pattern: 0x7c00042c args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "lwz" desc: "Load Word and Zero" @@ -841,7 +841,7 @@ opcodes: pattern: 0x80000000 args: [ "rD", "offset", "rA" ] defs: [ "rD" ] - uses: [ "offset", "rA" ] + uses: [ "offset", "rA.nz" ] - name: "lwzu" desc: "Load Word and Zero with Update" @@ -865,7 +865,7 @@ opcodes: pattern: 0x7c00002e args: [ "rD", "rA", "rB" ] defs: [ "rD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "mcrf" desc: "Move Condition Register Field" @@ -1111,7 +1111,7 @@ opcodes: pattern: 0xe0000000 args: [ "frD", "offset", "rA", "W", "l" ] defs: [ "frD" ] - uses: [ "rA" ] + uses: [ "rA.nz" ] - name: "psq_lu" desc: "Paired Single Quantized Load with Update" @@ -1135,14 +1135,14 @@ opcodes: pattern: 0x1000000c args: [ "frD", "rA", "rB", "W", "l" ] defs: [ "frD" ] - uses: [ "rA", "rB" ] + uses: [ "rA.nz", "rB" ] - name: "psq_st" desc: "Paired Single Quantized Store" bitmask: 0xfc000000 pattern: 0xf0000000 args: [ "frS", "offset", "rA", "W", "l" ] - uses: [ "frS", "rA" ] + uses: [ "frS", "rA.nz" ] - name: "psq_stu" desc: "Paired Single Quantized Store with Update" @@ -1165,7 +1165,7 @@ opcodes: bitmask: 0xfc00007f pattern: 0x1000000e args: [ "frS", "rA", "rB", "W", "l" ] - uses: [ "frS", "rA", "rB" ] + uses: [ "frS", "rA.nz", "rB" ] - name: "ps_abs" desc: "Paired Single Absolute Value" @@ -1191,7 +1191,7 @@ opcodes: pattern: 0x10000040 args: [ "crfD", "frA", "frB" ] defs: [ "crfD" ] - uses: [ "frA", "frB" ] + uses: [ "frA.nz", "frB" ] - name: "ps_cmpo1" desc: "Paired Singles Compare Ordered Low" @@ -1199,7 +1199,7 @@ opcodes: pattern: 0x100000c0 args: [ "crfD", "frA", "frB" ] defs: [ "crfD" ] - uses: [ "frA", "frB" ] + uses: [ "frA.nz", "frB" ] - name: "ps_cmpu0" desc: "Paired Singles Compare Unordered High" @@ -1207,7 +1207,7 @@ opcodes: pattern: 0x10000000 args: [ "crfD", "frA", "frB" ] defs: [ "crfD" ] - uses: [ "frA", "frB" ] + uses: [ "frA.nz", "frB" ] - name: "ps_cmpu1" desc: "Paired Singles Compare Unordered Low" @@ -1215,7 +1215,7 @@ opcodes: pattern: 0x10000080 args: [ "crfD", "frA", "frB" ] defs: [ "crfD" ] - uses: [ "frA", "frB" ] + uses: [ "frA.nz", "frB" ] - name: "ps_div" desc: "Paired Single Divide" @@ -1502,7 +1502,7 @@ opcodes: bitmask: 0xfc000000 pattern: 0x98000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stbu" desc: "Store Byte with Update" @@ -1525,14 +1525,14 @@ opcodes: bitmask: 0xfc0003ff pattern: 0x7c0001ae args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "stfd" desc: "Store Floating-Point Double" bitmask: 0xfc000000 pattern: 0xd8000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stfdu" desc: "Store Floating-Point Double with Update" @@ -1555,21 +1555,21 @@ opcodes: bitmask: 0xfc0007ff pattern: 0x7c0005ae args: [ "frS", "rA", "rB" ] - uses: [ "frS", "rA", "rB" ] + uses: [ "frS", "rA.nz", "rB" ] - name: "stfiwx" desc: "Store Floating-Point as Integer Word Indexed" bitmask: 0xfc0007ff pattern: 0x7c0007ae args: [ "frS", "rA", "rB" ] - uses: [ "frS", "rA", "rB" ] + uses: [ "frS", "rA.nz", "rB" ] - name: "stfs" desc: "Store Floating-Point Single" bitmask: 0xfc000000 pattern: 0xd0000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stfsu" desc: "Store Floating-Point Single with Update" @@ -1592,21 +1592,21 @@ opcodes: bitmask: 0xfc0007ff pattern: 0x7c00052e args: [ "frS", "rA", "rB" ] - uses: [ "frS", "rA", "rB" ] + uses: [ "frS", "rA.nz", "rB" ] - name: "sth" desc: "Store Half Word" bitmask: 0xfc000000 pattern: 0xb0000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "sthbrx" desc: "Store Half Word Byte-Reverse Indexed" bitmask: 0xfc0007ff pattern: 0x7c00072c args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "sthu" desc: "Store Half Word with Update" @@ -1629,49 +1629,49 @@ opcodes: bitmask: 0xfc0007ff pattern: 0x7c00032e args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "stmw" desc: "Store Multiple Word" bitmask: 0xfc000000 pattern: 0xbc000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stswi" desc: "Store String Word Immediate" bitmask: 0xfc0007ff pattern: 0x7c0005aa args: [ "rS", "rA", "NB" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stswx" desc: "Store String Word Indexed" bitmask: 0xfc0007ff pattern: 0x7c00052a args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "stw" desc: "Store Word" bitmask: 0xfc000000 pattern: 0x90000000 args: [ "rS", "offset", "rA" ] - uses: [ "rS", "rA" ] + uses: [ "rS", "rA.nz" ] - name: "stwbrx" desc: "Store Word Byte-Reverse Indexed" bitmask: 0xfc0007ff pattern: 0x7c00052c args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "stwcx." desc: "Store Word Conditional Indexed" bitmask: 0xfc0007ff pattern: 0x7c00012d args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "stwu" desc: "Store Word with Update" @@ -1694,7 +1694,7 @@ opcodes: bitmask: 0xfc0007ff pattern: 0x7c00012e args: [ "rS", "rA", "rB" ] - uses: [ "rS", "rA", "rB" ] + uses: [ "rS", "rA.nz", "rB" ] - name: "subf" desc: "Subtract From Carrying"