USE IEEE.std_logic_1164.all;
USE IEEE.numeric_std.all;
-USE WORK.mbl_Pkg.all;
-
+USE WORK.mbl_pkg.all;
----------------------------------------------------------
ENTITY exeq IS
END IF;
WHEN A_MFS =>
- result_v := MSR_i.C & C_24_ZEROS & "0000" & MSR_i.C & MSR_i.IE & '0';
+ if (COMPATIBILITY_MODE_g = FALSE) THEN
+ result_v := C_24_ZEROS & "00000" & MSR_i.C & MSR_i.IE & '0';
+ ELSE
+ result_v := MSR_i.C & C_24_ZEROS & "0000" & MSR_i.C & MSR_i.IE & '0';
+ END IF;
WHEN A_MTS =>
MSR_o.IE <= data_Ra_v(1);
END IF;
END IF; -- (USE_BARREL_g = TRUE)
+ WHEN A_CLZ =>
+ tmp64_v := (OTHERS => '0');
+ leading_zeroes32 ( in1_v, UNSIGNED(tmp64_v(31 DOWNTO 0)), result_v );
+
WHEN OTHERS =>
NULL;