|
|
@ -864,7 +864,7 @@ begin
|
|
|
|
report "MFSPR to SPR " & integer'image(decode_spr_num(e_in.insn)) &
|
|
|
|
report "MFSPR to SPR " & integer'image(decode_spr_num(e_in.insn)) &
|
|
|
|
"=" & to_hstring(a_in);
|
|
|
|
"=" & to_hstring(a_in);
|
|
|
|
result_en := '1';
|
|
|
|
result_en := '1';
|
|
|
|
if is_fast_spr(e_in.read_reg1) then
|
|
|
|
if (is_fast_spr(e_in.read_reg1) = '1') then
|
|
|
|
result := a_in;
|
|
|
|
result := a_in;
|
|
|
|
if decode_spr_num(e_in.insn) = SPR_XER then
|
|
|
|
if decode_spr_num(e_in.insn) = SPR_XER then
|
|
|
|
-- bits 0:31 and 35:43 are treated as reserved and return 0s when read using mfxer
|
|
|
|
-- bits 0:31 and 35:43 are treated as reserved and return 0s when read using mfxer
|
|
|
@ -953,7 +953,7 @@ begin
|
|
|
|
when OP_MTSPR =>
|
|
|
|
when OP_MTSPR =>
|
|
|
|
report "MTSPR to SPR " & integer'image(decode_spr_num(e_in.insn)) &
|
|
|
|
report "MTSPR to SPR " & integer'image(decode_spr_num(e_in.insn)) &
|
|
|
|
"=" & to_hstring(c_in);
|
|
|
|
"=" & to_hstring(c_in);
|
|
|
|
if is_fast_spr(e_in.write_reg) then
|
|
|
|
if ( is_fast_spr(e_in.write_reg) = '1' ) then
|
|
|
|
result := c_in;
|
|
|
|
result := c_in;
|
|
|
|
result_en := '1';
|
|
|
|
result_en := '1';
|
|
|
|
if decode_spr_num(e_in.insn) = SPR_XER then
|
|
|
|
if decode_spr_num(e_in.insn) = SPR_XER then
|
|
|
|