|  | `ifndef ALU_DEFINE_SVH | 
|  | `define ALU_DEFINE_SVH | 
|  |  | 
|  | typedef enum logic [0:0]{ | 
|  | ADDSUB_VADD, | 
|  | ADDSUB_VSUB | 
|  | } ADDSUB_e; | 
|  |  | 
|  | typedef enum logic [1:0]{ | 
|  | SHIFT_SLL, | 
|  | SHIFT_SRL, | 
|  | SHIFT_SRA | 
|  | } SHIFT_e; | 
|  |  | 
|  | typedef enum logic [1:0]{ | 
|  | OP_NONE, | 
|  | OP_VCPOP, | 
|  | OP_VIOTA, | 
|  | OP_OTHER | 
|  | } ALU_SUB_OPCODE_e; | 
|  |  | 
|  | typedef struct packed { | 
|  | `ifdef TB_SUPPORT | 
|  | logic   [`PC_WIDTH-1:0]                   uop_pc; | 
|  | `endif | 
|  | logic [`ROB_DEPTH_WIDTH-1:0]              rob_entry; | 
|  | EEW_e                                     vd_eew; | 
|  | logic [`UOP_INDEX_WIDTH-1:0]              uop_index; | 
|  | ALU_SUB_OPCODE_e                          alu_sub_opcode; | 
|  | logic [`VLEN-1:0]                         result_data; | 
|  | logic [`VLEN/64-1:0][63:0][$clog2(64):0]  data_viota_per64; | 
|  | logic [`VLENB-1:0]                        vsaturate; | 
|  | } PIPE_DATA_t; | 
|  |  | 
|  | `endif // ALU_DEFINE_SVH |