data/full_repos/permissive/493514142/verilog/rtl/FPU/FPU_sign_injection.v
data/verilator_xmls/49f6c14a-df48-4dc1-910a-09d35efa7fd9.xml
module FPU_sign (rst_l,op,IEEE_A,IEEE_B,IEEE_out);
  
  parameter Std = 31;
  parameter Exp = 7;
  parameter Man = 22;
  
  input rst_l;
  input [2:0] op;
  input [Std : 0] IEEE_A; 
  input [Std : 0] IEEE_B;
  output [Std : 0] IEEE_out;
  
  wire [2:0] op_r;
  wire Sign_A, Sign_B;
  wire [Exp : 0] Exp_A;
  wire [Man : 0] Mantissa_A;
  
  

  	assign Sign_A = (rst_l == 1'b0) ? 1'b0 : IEEE_A[Std];
  	assign Sign_B = (rst_l == 1'b0) ? 1'b0 : IEEE_B[Std];
    assign Exp_A  = (rst_l == 1'b0) ? {(Exp+1){1'b0}} : IEEE_A[Std - 1 : Std - Exp - 1];
    assign Mantissa_A = (rst_l == 1'b0) ? {(Man+1){1'b0}} : IEEE_A[Man : 0];
    assign  IEEE_out = (rst_l == 1'b0) ? {(Std+1){1'b0}} : (op[0]) ?  {Sign_B,Exp_A,Mantissa_A} : (op[1]) ? {~Sign_B,Exp_A,Mantissa_A} : (op[2]) ? {(Sign_A ^ Sign_B),Exp_A,Mantissa_A} : {(Std+1){1'b0}}; 
 
endmodule
module FPU_sign (rst_l,op,IEEE_A,IEEE_B,IEEE_out);

  
  parameter Std = 31;
  parameter Exp = 7;
  parameter Man = 22;
  
  input rst_l;
  input [2:0] op;
  input [Std : 0] IEEE_A; 
  input [Std : 0] IEEE_B;
  output [Std : 0] IEEE_out;
  
  wire [2:0] op_r;
  wire Sign_A, Sign_B;
  wire [Exp : 0] Exp_A;
  wire [Man : 0] Mantissa_A;
  
  

  	assign Sign_A = (rst_l == 1'b0) ? 1'b0 : IEEE_A[Std];
  	assign Sign_B = (rst_l == 1'b0) ? 1'b0 : IEEE_B[Std];
    assign Exp_A  = (rst_l == 1'b0) ? {(Exp+1){1'b0}} : IEEE_A[Std - 1 : Std - Exp - 1];
    assign Mantissa_A = (rst_l == 1'b0) ? {(Man+1){1'b0}} : IEEE_A[Man : 0];
    assign  IEEE_out = (rst_l == 1'b0) ? {(Std+1){1'b0}} : (op[0]) ?  {Sign_B,Exp_A,Mantissa_A} : (op[1]) ? {~Sign_B,Exp_A,Mantissa_A} : (op[2]) ? {(Sign_A ^ Sign_B),Exp_A,Mantissa_A} : {(Std+1){1'b0}}; 
 
endmodule