mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-11 06:05:49 +00:00
fdiv cleanup, reduce number of rv32f fma_b15 tests being run to speed up regression
This commit is contained in:
parent
0ecbb45b78
commit
18f19ce44d
@ -69,7 +69,6 @@ module fdivsqrtfsm(
|
||||
assign ISpecialCaseE = AZeroE | BZeroE; // *** why is AZeroE part of this. Should other special cases be considered?
|
||||
assign SpecialCaseE = MDUE ? ISpecialCaseE : FSpecialCaseE;
|
||||
end else assign SpecialCaseE = FSpecialCaseE;
|
||||
//flopenr #(1) SpecialCaseReg(clk, reset, ~StallM, SpecialCaseE, SpecialCaseM); // save SpecialCase for checking in fdivsqrtpostproc
|
||||
flopenr #(1) SpecialCaseReg(clk, reset, IFDivStartE, SpecialCaseE, SpecialCaseM); // save SpecialCase for checking in fdivsqrtpostproc
|
||||
|
||||
// DIVN = `NF+3
|
||||
|
@ -157,13 +157,6 @@ module fdivsqrtpostproc(
|
||||
end else begin
|
||||
NormShiftM = ((`DIVBLEN+1)'(`DIVb) - (nM * (`DIVBLEN+1)'(`LOGR)));
|
||||
PreResultM = IntQuotM;
|
||||
/*
|
||||
if (~ALTBM & NegQuotM) begin
|
||||
PreResultM = {3'b111, -IntQuotM};
|
||||
end else begin
|
||||
PreResultM = {3'b000, IntQuotM};
|
||||
end*/
|
||||
//PreResultM = {IntQuotM[`DIVb], IntQuotM[`DIVb], IntQuotM[`DIVb], IntQuotM}; // Suspicious Sign Extender
|
||||
end
|
||||
|
||||
|
||||
@ -171,7 +164,12 @@ module fdivsqrtpostproc(
|
||||
|
||||
assign PreFPIntDivResultM = $signed(PreResultM >>> NormShiftM);
|
||||
assign SpecialFPIntDivResultM = BZeroM ? (RemOpM ? AM : {(`XLEN){1'b1}}) : PreFPIntDivResultM[`XLEN-1:0]; // special cases
|
||||
// *** conditional on RV64
|
||||
assign FPIntDivResultM = (W64M ? {{(`XLEN-32){SpecialFPIntDivResultM[31]}}, SpecialFPIntDivResultM[31:0]} : SpecialFPIntDivResultM[`XLEN-1:0]); // Sign extending in case of W64
|
||||
|
||||
// sign extend result for W64
|
||||
if (`XLEN==64)
|
||||
assign FPIntDivResultM = (W64M ? {{(`XLEN-32){SpecialFPIntDivResultM[31]}}, SpecialFPIntDivResultM[31:0]} :
|
||||
SpecialFPIntDivResultM[`XLEN-1:0]); // Sign extending in case of W64
|
||||
else
|
||||
assign FPIntDivResultM = SpecialFPIntDivResultM[`XLEN-1:0];
|
||||
end
|
||||
endmodule
|
@ -1098,7 +1098,7 @@ string imperas32f[] = '{
|
||||
"rv64i_m/F/src/flw-align-01.S",
|
||||
"rv64i_m/F/src/fmadd_b1-01.S",
|
||||
"rv64i_m/F/src/fmadd_b14-01.S",
|
||||
"rv64i_m/F/src/fmadd_b15-01.S",
|
||||
//"rv64i_m/F/src/fmadd_b15-01.S",
|
||||
"rv64i_m/F/src/fmadd_b16-01.S",
|
||||
"rv64i_m/F/src/fmadd_b17-01.S",
|
||||
"rv64i_m/F/src/fmadd_b18-01.S",
|
||||
@ -1473,7 +1473,7 @@ string imperas32f[] = '{
|
||||
"rv32i_m/F/src/fmin_b19-01.S",
|
||||
"rv32i_m/F/src/fmsub_b1-01.S",
|
||||
"rv32i_m/F/src/fmsub_b14-01.S",
|
||||
"rv32i_m/F/src/fmsub_b15-01.S",
|
||||
//"rv32i_m/F/src/fmsub_b15-01.S",
|
||||
"rv32i_m/F/src/fmsub_b16-01.S",
|
||||
"rv32i_m/F/src/fmsub_b17-01.S",
|
||||
"rv32i_m/F/src/fmsub_b18-01.S",
|
||||
|
Loading…
Reference in New Issue
Block a user