module __float32__from_int32_internal( input wire sign, input wire [31:0] fraction, input wire [7:0] lz, output wire [31:0] out ); wire [7:0] add_239; wire [32:0] fraction__1; wire [25:0] fraction__2; wire [2:0] normal_chunk; wire [1:0] half_way_chunk; wire [23:0] add_262; wire [6:0] sub_263; wire [7:0] bexp; wire [7:0] sub_268; wire [7:0] bexp__1; wire [22:0] fraction__4; wire or_275; wire [31:0] result__1; assign add_239 = lz + 8'h03; assign fraction__1 = add_239 >= 8'h21 ? 33'h0_0000_0000 : {1'h0, fraction} << add_239; assign fraction__2 = fraction__1[32:7] | {25'h000_0000, fraction__1[6:0] != 7'h00}; assign normal_chunk = fraction__2[2:0]; assign half_way_chunk = fraction__2[3:2]; assign add_262 = {1'h0, fraction__2[25:3]} + {23'h00_0000, normal_chunk > 3'h4 | half_way_chunk == 2'h3}; assign sub_263 = 7'h4e - lz[7:1]; assign bexp = {sub_263, ~lz[0]}; assign sub_268 = 8'h9e - lz; assign bexp__1 = add_262[23] ? sub_268 : bexp; assign fraction__4 = add_262[22:0]; assign or_275 = bexp__1[7] | (&bexp__1[6:0]) | fraction__4 != 23'h00_0000; assign result__1 = {or_275 & sign, bexp__1 & {8{or_275}}, fraction__4}; assign out = result__1; endmodule