From e370e76b423769a07545469e149632cb154ff53a Mon Sep 17 00:00:00 2001 From: Shivang Mishra Date: Wed, 8 May 2024 18:14:24 +0530 Subject: [PATCH 1/4] replace vmandnot and vmornot with vmandn and vmorn --- model/riscv_insts_vext_mask.sail | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/model/riscv_insts_vext_mask.sail b/model/riscv_insts_vext_mask.sail index 6528882d1..6b534b801 100755 --- a/model/riscv_insts_vext_mask.sail +++ b/model/riscv_insts_vext_mask.sail @@ -69,11 +69,11 @@ function clause execute(MMTYPE(funct6, vs2, vs1, vd)) = { mapping mmtype_mnemonic : mmfunct6 <-> string = { MM_VMAND <-> "vmand.mm", MM_VMNAND <-> "vmnand.mm", - MM_VMANDNOT <-> "vmandnot.mm", + MM_VMANDNOT <-> "vmandn.mm", MM_VMXOR <-> "vmxor.mm", MM_VMOR <-> "vmor.mm", MM_VMNOR <-> "vmnor.mm", - MM_VMORNOT <-> "vmornot.mm", + MM_VMORNOT <-> "vmorn.mm", MM_VMXNOR <-> "vmxnor.mm" } From 96595c99280120990e066840abbac9aafa935629 Mon Sep 17 00:00:00 2001 From: Shivang Mishra Date: Wed, 8 May 2024 19:24:38 +0530 Subject: [PATCH 2/4] renamed MM_VMORNOT and MM_VMANDNOT --- model/riscv_insts_vext_mask.sail | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/model/riscv_insts_vext_mask.sail b/model/riscv_insts_vext_mask.sail index 6b534b801..663310a57 100755 --- a/model/riscv_insts_vext_mask.sail +++ b/model/riscv_insts_vext_mask.sail @@ -17,11 +17,11 @@ union clause ast = MMTYPE : (mmfunct6, regidx, regidx, regidx) mapping encdec_mmfunct6 : mmfunct6 <-> bits(6) = { MM_VMAND <-> 0b011001, MM_VMNAND <-> 0b011101, - MM_VMANDNOT <-> 0b011000, + MM_VMANDN <-> 0b011000, MM_VMXOR <-> 0b011011, MM_VMOR <-> 0b011010, MM_VMNOR <-> 0b011110, - MM_VMORNOT <-> 0b011100, + MM_VMORN <-> 0b011100, MM_VMXNOR <-> 0b011111 } @@ -51,11 +51,11 @@ function clause execute(MMTYPE(funct6, vs2, vs1, vd)) = { result[i] = match funct6 { MM_VMAND => vs2_val[i] & vs1_val[i], MM_VMNAND => not(vs2_val[i] & vs1_val[i]), - MM_VMANDNOT => vs2_val[i] & not(vs1_val[i]), + MM_VMANDN => vs2_val[i] & not(vs1_val[i]), MM_VMXOR => vs2_val[i] != vs1_val[i], MM_VMOR => vs2_val[i] | vs1_val[i], MM_VMNOR => not(vs2_val[i] | vs1_val[i]), - MM_VMORNOT => vs2_val[i] | not(vs1_val[i]), + MM_VMORN => vs2_val[i] | not(vs1_val[i]), MM_VMXNOR => vs2_val[i] == vs1_val[i] } } @@ -69,11 +69,11 @@ function clause execute(MMTYPE(funct6, vs2, vs1, vd)) = { mapping mmtype_mnemonic : mmfunct6 <-> string = { MM_VMAND <-> "vmand.mm", MM_VMNAND <-> "vmnand.mm", - MM_VMANDNOT <-> "vmandn.mm", + MM_VMANDN <-> "vmandn.mm", MM_VMXOR <-> "vmxor.mm", MM_VMOR <-> "vmor.mm", MM_VMNOR <-> "vmnor.mm", - MM_VMORNOT <-> "vmorn.mm", + MM_VMORN <-> "vmorn.mm", MM_VMXNOR <-> "vmxnor.mm" } From bde933d74eaa65cc1440e7c4a2a507e4b789ee22 Mon Sep 17 00:00:00 2001 From: Shivang Mishra Date: Wed, 8 May 2024 19:26:50 +0530 Subject: [PATCH 3/4] changes for MM_VMORNOT and MM_VMANDNOT in riscv_vreg_type --- model/riscv_vreg_type.sail | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/model/riscv_vreg_type.sail b/model/riscv_vreg_type.sail index 3f2ddb027..a1f292a5e 100755 --- a/model/riscv_vreg_type.sail +++ b/model/riscv_vreg_type.sail @@ -53,7 +53,7 @@ enum nxfunct6 = { NX_VNCLIPU, NX_VNCLIP} enum nxsfunct6 = { NXS_VNSRL, NXS_VNSRA } -enum mmfunct6 = { MM_VMAND, MM_VMNAND, MM_VMANDNOT, MM_VMXOR, MM_VMOR, MM_VMNOR, MM_VMORNOT, MM_VMXNOR } +enum mmfunct6 = { MM_VMAND, MM_VMNAND, MM_VMANDN, MM_VMXOR, MM_VMOR, MM_VMNOR, MM_VMORN, MM_VMXNOR } enum nifunct6 = { NI_VNCLIPU, NI_VNCLIP } From 5b7df5203bc4db6bcba0ed5b955f3cd203d6c882 Mon Sep 17 00:00:00 2001 From: Shivang Mishra Date: Wed, 8 May 2024 20:10:29 +0530 Subject: [PATCH 4/4] fixed indentation --- model/riscv_insts_vext_mask.sail | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/model/riscv_insts_vext_mask.sail b/model/riscv_insts_vext_mask.sail index 663310a57..f04ae1acb 100755 --- a/model/riscv_insts_vext_mask.sail +++ b/model/riscv_insts_vext_mask.sail @@ -17,11 +17,11 @@ union clause ast = MMTYPE : (mmfunct6, regidx, regidx, regidx) mapping encdec_mmfunct6 : mmfunct6 <-> bits(6) = { MM_VMAND <-> 0b011001, MM_VMNAND <-> 0b011101, - MM_VMANDN <-> 0b011000, + MM_VMANDN <-> 0b011000, MM_VMXOR <-> 0b011011, MM_VMOR <-> 0b011010, MM_VMNOR <-> 0b011110, - MM_VMORN <-> 0b011100, + MM_VMORN <-> 0b011100, MM_VMXNOR <-> 0b011111 } @@ -51,11 +51,11 @@ function clause execute(MMTYPE(funct6, vs2, vs1, vd)) = { result[i] = match funct6 { MM_VMAND => vs2_val[i] & vs1_val[i], MM_VMNAND => not(vs2_val[i] & vs1_val[i]), - MM_VMANDN => vs2_val[i] & not(vs1_val[i]), + MM_VMANDN => vs2_val[i] & not(vs1_val[i]), MM_VMXOR => vs2_val[i] != vs1_val[i], MM_VMOR => vs2_val[i] | vs1_val[i], MM_VMNOR => not(vs2_val[i] | vs1_val[i]), - MM_VMORN => vs2_val[i] | not(vs1_val[i]), + MM_VMORN => vs2_val[i] | not(vs1_val[i]), MM_VMXNOR => vs2_val[i] == vs1_val[i] } } @@ -69,11 +69,11 @@ function clause execute(MMTYPE(funct6, vs2, vs1, vd)) = { mapping mmtype_mnemonic : mmfunct6 <-> string = { MM_VMAND <-> "vmand.mm", MM_VMNAND <-> "vmnand.mm", - MM_VMANDN <-> "vmandn.mm", + MM_VMANDN <-> "vmandn.mm", MM_VMXOR <-> "vmxor.mm", MM_VMOR <-> "vmor.mm", MM_VMNOR <-> "vmnor.mm", - MM_VMORN <-> "vmorn.mm", + MM_VMORN <-> "vmorn.mm", MM_VMXNOR <-> "vmxnor.mm" }