data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v
1: b'%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:36: Unsized numbers/parameters not allowed in concatenations.\n                                                                                                 : ... In instance face_culler\n            {ACW, F}: signForCulling = PLUS;\n                  ^\n                      ... Use "/* verilator lint_off WIDTHCONCAT */" and lint_on around source to disable this message.\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:37: Unsized numbers/parameters not allowed in concatenations.\n                                                                                                 : ... In instance face_culler\n            { CW, F}: signForCulling = MINUS;\n                  ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:38: Unsized numbers/parameters not allowed in concatenations.\n                                                                                                 : ... In instance face_culler\n            { CW, B}: signForCulling = PLUS;\n                  ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:39: Unsized numbers/parameters not allowed in concatenations.\n                                                                                                 : ... In instance face_culler\n            {ACW, B}: signForCulling = MINUS;\n                  ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:36: Unsized numbers/parameters not allowed in replications.\n                                                                                                 : ... In instance face_culler\n            {ACW, F}: signForCulling = PLUS;\n                ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:37: Unsized numbers/parameters not allowed in replications.\n                                                                                                 : ... In instance face_culler\n            { CW, F}: signForCulling = MINUS;\n                ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:38: Unsized numbers/parameters not allowed in replications.\n                                                                                                 : ... In instance face_culler\n            { CW, B}: signForCulling = PLUS;\n                ^\n%Warning-WIDTHCONCAT: data/full_repos/permissive/499944578/rtl/src/triangle_pipe/face_culler.v:39: Unsized numbers/parameters not allowed in replications.\n                                                                                                 : ... In instance face_culler\n            {ACW, B}: signForCulling = MINUS;\n                ^\n%Error: Exiting due to 8 warning(s)\n'
module face_culler(
    input wire [65:0] Pa,
    input wire [65:0] Pb,
    input wire [65:0] Pc,
    input wire Enable,
    input wire [1:0] Mode,
    input wire windingOrder,
    input wire origin_location,
    input wire areaSign,
    output wire cull
);

    localparam PLUS = 1'b0;
    localparam MINUS = 1'b1;


    localparam TL = 1'b0;
    localparam BL = 1'b1;


    localparam CW = 1'b1 ;
    localparam ACW = 1'b0;


    localparam B = 'b00;
    localparam F = 'b01;
    localparam FB = 'b10;
    reg signForCulling;



    always @(windingOrder or Mode[0]) begin
        case({windingOrder, Mode[0]})


            {ACW, F}: signForCulling = PLUS;
            { CW, F}: signForCulling = MINUS;
            { CW, B}: signForCulling = PLUS;
            {ACW, B}: signForCulling = MINUS;
        endcase
    end
    

    assign cull = Enable && ((areaSign == signForCulling) || (Mode == FB));
    
endmodule
module face_culler(
    input wire [65:0] Pa,
    input wire [65:0] Pb,
    input wire [65:0] Pc,
    input wire Enable,
    input wire [1:0] Mode,
    input wire windingOrder,
    input wire origin_location,
    input wire areaSign,
    output wire cull
);


    localparam PLUS = 1'b0;
    localparam MINUS = 1'b1;


    localparam TL = 1'b0;
    localparam BL = 1'b1;


    localparam CW = 1'b1 ;
    localparam ACW = 1'b0;


    localparam B = 'b00;
    localparam F = 'b01;
    localparam FB = 'b10;
    reg signForCulling;



    always @(windingOrder or Mode[0]) begin
        case({windingOrder, Mode[0]})


            {ACW, F}: signForCulling = PLUS;
            { CW, F}: signForCulling = MINUS;
            { CW, B}: signForCulling = PLUS;
            {ACW, B}: signForCulling = MINUS;
        endcase
    end
    

    assign cull = Enable && ((areaSign == signForCulling) || (Mode == FB));
    
endmodule