Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

Commit 71085618 authored by Davide Pala's avatar Davide Pala
Browse files

Change single bit slice var.slc<1>(n) with bit access var[n]

parent 3680a8ae
Pipeline #247256 passed with stages
in 19 minutes and 2 seconds
......@@ -305,7 +305,7 @@ void execute(const struct DCtoEx dctoEx, struct ExtoMem& extoMem)
extoMem.result = dctoEx.lhs << (ac_int<5, false>)dctoEx.rhs;
break;
case RISCV_OPI_SRI:
if (dctoEx.funct7.slc<1>(5)) // SRAI
if (dctoEx.funct7[5]) // SRAI
extoMem.result = dctoEx.lhs >> shamt;
else // SRLI
extoMem.result = (ac_int<32, false>)dctoEx.lhs >> shamt;
......@@ -313,13 +313,13 @@ void execute(const struct DCtoEx dctoEx, struct ExtoMem& extoMem)
}
break;
case RISCV_OP:
if (dctoEx.funct7.slc<1>(0)) // M Extension
if (dctoEx.funct7[0]) // M Extension
{
} else {
switch (dctoEx.funct3) {
case RISCV_OP_ADD:
if (dctoEx.funct7.slc<1>(5)) // SUB
if (dctoEx.funct7[5]) // SUB
extoMem.result = dctoEx.lhs - dctoEx.rhs;
else // ADD
extoMem.result = dctoEx.lhs + dctoEx.rhs;
......@@ -337,7 +337,7 @@ void execute(const struct DCtoEx dctoEx, struct ExtoMem& extoMem)
extoMem.result = dctoEx.lhs ^ dctoEx.rhs;
break;
case RISCV_OP_SR:
if (dctoEx.funct7.slc<1>(5)) // SRA
if (dctoEx.funct7[5]) // SRA
extoMem.result = dctoEx.lhs >> (ac_int<5, false>)dctoEx.rhs;
else // SRL
extoMem.result = (ac_int<32, false>)dctoEx.lhs >> (ac_int<5, false>)dctoEx.rhs;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment