42#ifndef __ARCH_RISCV_TYPES_HH__
43#define __ARCH_RISCV_TYPES_HH__
67 Bitfield<37, 35>
vsew;
68 Bitfield<34, 32>
vlmul;
180constexpr
unsigned MaxVecLenInBits = 65536;
#define BitUnion64(name)
Use this to define conveniently sized values overlayed with bitfields.
#define EndBitUnion(name)
This closes off the class and union started by the above macro.
#define SubBitUnion(name, first, last)
Regular bitfields These define macros for read/write regular bitfield based subbitfields.
#define EndSubBitUnion(name)
This closes off the union created above and gives it a name.
Bitfield< 31, 25 > funct7
Bitfield< 7 > bimm12bit11
Bitfield< 10, 9 > cjumpimm9to8
Bitfield< 11, 10 > cfunct2high
Bitfield< 6, 5 > cfunct2low
Bitfield< 31, 27 > amofunct
Bitfield< 19, 15 > csrimm
Bitfield< 24, 20 > shamt5
Bitfield< 15, 13 > copcode
Bitfield< 14, 12 > funct3
Bitfield< 61 > compressed
Bitfield< 11, 8 > bimm12bits4to1
Bitfield< 31, 30 > bit31_30
Bitfield< 2, 2 > cjumpimm5to5
Bitfield< 29, 20 > zimm_vsetivli
Bitfield< 19, 12 > ujimmbits19to12
Bitfield< 12, 2 > cjumpimm
Bitfield< 31, 20 > funct12
Bitfield< 1, 0 > quadRant
Bitfield< 26, 25 > funct2
Bitfield< 31, 26 > vfunct6
Bitfield< 25, 20 > shamt6
Bitfield< 20 > ujimmbit11
Bitfield< 12 > cjumpimmsign
Bitfield< 24, 20 > conv_sgn
Bitfield< 26, 25 > vfunct2
Bitfield< 19, 15 > uimm_vsetivli
Bitfield< 30, 20 > zimm_vsetvli
Bitfield< 14, 12 > round_mode
Bitfield< 30, 21 > ujimmbits10to1
Bitfield< 7, 7 > cjumpimm6to6
Bitfield< 30, 25 > bimm12bits10to5
constexpr unsigned MaxVecLenInBytes
Bitfield< 31, 27 > vfunct5
Bitfield< 31, 25 > m5func
Bitfield< 6, 6 > cjumpimm7to7
Bitfield< 5, 3 > cjumpimm3to1
Bitfield< 31, 25 > bit31_25
Bitfield< 19, 15 > vecimm
Bitfield< 8, 8 > cjumpimm10to10
Bitfield< 11, 11 > cjumpimm4to4
Bitfield< 27, 25 > vfunct3
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.