H A D | bpf_jit.h | 236 static inline u32 rv_r_insn(u8 funct7, u8 rs2, u8 rs1, u8 funct3, u8 rd, argument 240 (rd << 7) | opcode; 243 static inline u32 rv_i_insn(u16 imm11_0, u8 rs1, u8 funct3, u8 rd, u8 opcode) argument 245 return (imm11_0 << 20) | (rs1 << 15) | (funct3 << 12) | (rd << 7) | 266 static inline u32 rv_u_insn(u32 imm31_12, u8 rd, u8 opcode) argument 268 return (imm31_12 << 12) | (rd << 7) | opcode; 271 static inline u32 rv_j_insn(u32 imm20_1, u8 rd, u8 opcode) argument 278 return (imm << 12) | (rd << 7) | opcode; 282 u8 funct3, u8 rd, u8 opcode) 286 return rv_r_insn(funct7, rs2, rs1, funct3, rd, opcod 281 rv_amo_insn(u8 funct5, u8 aq, u8 rl, u8 rs2, u8 rs1, u8 funct3, u8 rd, u8 opcode) argument 291 rv_cr_insn(u8 funct4, u8 rd, u8 rs2, u8 op) argument 296 rv_ci_insn(u8 funct3, u32 imm6, u8 rd, u8 op) argument 309 rv_ciw_insn(u8 funct3, u32 uimm, u8 rd, u8 op) argument 314 rv_cl_insn(u8 funct3, u32 imm_hi, u8 rs1, u32 imm_lo, u8 rd, u8 op) argument 328 rv_ca_insn(u8 funct6, u8 rd, u8 funct2, u8 rs2, u8 op) argument 334 rv_cb_insn(u8 funct3, u32 imm6, u8 funct2, u8 rd, u8 op) argument 344 rv_addi(u8 rd, u8 rs1, u16 imm11_0) argument 349 rv_andi(u8 rd, u8 rs1, u16 imm11_0) argument 354 rv_ori(u8 rd, u8 rs1, u16 imm11_0) argument 359 rv_xori(u8 rd, u8 rs1, u16 imm11_0) argument 364 rv_slli(u8 rd, u8 rs1, u16 imm11_0) argument 369 rv_srli(u8 rd, u8 rs1, u16 imm11_0) argument 374 rv_srai(u8 rd, u8 rs1, u16 imm11_0) argument 379 rv_lui(u8 rd, u32 imm31_12) argument 384 rv_auipc(u8 rd, u32 imm31_12) argument 389 rv_add(u8 rd, u8 rs1, u8 rs2) argument 394 rv_sub(u8 rd, u8 rs1, u8 rs2) argument 399 rv_sltu(u8 rd, u8 rs1, u8 rs2) argument 404 rv_and(u8 rd, u8 rs1, u8 rs2) argument 409 rv_or(u8 rd, u8 rs1, u8 rs2) argument 414 rv_xor(u8 rd, u8 rs1, u8 rs2) argument 419 rv_sll(u8 rd, u8 rs1, u8 rs2) argument 424 rv_srl(u8 rd, u8 rs1, u8 rs2) argument 429 rv_sra(u8 rd, u8 rs1, u8 rs2) argument 434 rv_mul(u8 rd, u8 rs1, u8 rs2) argument 439 rv_mulhu(u8 rd, u8 rs1, u8 rs2) argument 444 rv_div(u8 rd, u8 rs1, u8 rs2) argument 449 rv_divu(u8 rd, u8 rs1, u8 rs2) argument 454 rv_rem(u8 rd, u8 rs1, u8 rs2) argument 459 rv_remu(u8 rd, u8 rs1, u8 rs2) argument 464 rv_jal(u8 rd, u32 imm20_1) argument 469 rv_jalr(u8 rd, u8 rs1, u16 imm11_0) argument 524 rv_lb(u8 rd, u16 imm11_0, u8 rs1) argument 529 rv_lh(u8 rd, u16 imm11_0, u8 rs1) argument 534 rv_lw(u8 rd, u16 imm11_0, u8 rs1) argument 539 rv_lbu(u8 rd, u16 imm11_0, u8 rs1) argument 544 rv_lhu(u8 rd, u16 imm11_0, u8 rs1) argument 564 rv_amoadd_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 569 rv_amoand_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 574 rv_amoor_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 579 rv_amoxor_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 584 rv_amoswap_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 589 rv_lr_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 594 rv_sc_w(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 613 rvc_addi4spn(u8 rd, u32 imm10) argument 622 rvc_lw(u8 rd, u32 imm7, u8 rs1) argument 640 rvc_addi(u8 rd, u32 imm6) argument 645 rvc_li(u8 rd, u32 imm6) argument 659 rvc_lui(u8 rd, u32 imm6) argument 664 rvc_srli(u8 rd, u32 imm6) argument 669 rvc_srai(u8 rd, u32 imm6) argument 674 rvc_andi(u8 rd, u32 imm6) argument 679 rvc_sub(u8 rd, u8 rs) argument 684 rvc_xor(u8 rd, u8 rs) argument 689 rvc_or(u8 rd, u8 rs) argument 694 rvc_and(u8 rd, u8 rs) argument 699 rvc_slli(u8 rd, u32 imm6) argument 704 rvc_lwsp(u8 rd, u32 imm8) argument 717 rvc_mv(u8 rd, u8 rs) argument 727 rvc_add(u8 rd, u8 rs) argument 741 rvzbb_sextb(u8 rd, u8 rs1) argument 746 rvzbb_sexth(u8 rd, u8 rs1) argument 751 rvzbb_zexth(u8 rd, u8 rs) argument 759 rvzbb_rev8(u8 rd, u8 rs) argument 776 rv_addiw(u8 rd, u8 rs1, u16 imm11_0) argument 781 rv_slliw(u8 rd, u8 rs1, u16 imm11_0) argument 786 rv_srliw(u8 rd, u8 rs1, u16 imm11_0) argument 791 rv_sraiw(u8 rd, u8 rs1, u16 imm11_0) argument 796 rv_addw(u8 rd, u8 rs1, u8 rs2) argument 801 rv_subw(u8 rd, u8 rs1, u8 rs2) argument 806 rv_sllw(u8 rd, u8 rs1, u8 rs2) argument 811 rv_srlw(u8 rd, u8 rs1, u8 rs2) argument 816 rv_sraw(u8 rd, u8 rs1, u8 rs2) argument 821 rv_mulw(u8 rd, u8 rs1, u8 rs2) argument 826 rv_divw(u8 rd, u8 rs1, u8 rs2) argument 831 rv_divuw(u8 rd, u8 rs1, u8 rs2) argument 836 rv_remw(u8 rd, u8 rs1, u8 rs2) argument 841 rv_remuw(u8 rd, u8 rs1, u8 rs2) argument 846 rv_ld(u8 rd, u16 imm11_0, u8 rs1) argument 851 rv_lwu(u8 rd, u16 imm11_0, u8 rs1) argument 861 rv_amoadd_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 866 rv_amoand_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 871 rv_amoor_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 876 rv_amoxor_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 881 rv_amoswap_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 886 rv_lr_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 891 rv_sc_d(u8 rd, u8 rs2, u8 rs1, u8 aq, u8 rl) argument 898 rvc_ld(u8 rd, u32 imm8, u8 rs1) argument 916 rvc_subw(u8 rd, u8 rs) argument 921 rvc_addiw(u8 rd, u32 imm6) argument 926 rvc_ldsp(u8 rd, u32 imm9) argument 946 emit_jalr(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 956 emit_mv(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 964 emit_add(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 972 emit_addi(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 985 emit_li(u8 rd, s32 imm, struct rv_jit_context *ctx) argument 993 emit_lui(u8 rd, s32 imm, struct rv_jit_context *ctx) argument 1001 emit_slli(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 1009 emit_andi(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 1017 emit_srli(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 1025 emit_srai(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 1033 emit_sub(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 1041 emit_or(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 1049 emit_and(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 1057 emit_xor(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 1065 emit_lw(u8 rd, s32 off, u8 rs1, struct rv_jit_context *ctx) argument 1088 emit_addiw(u8 rd, u8 rs, s32 imm, struct rv_jit_context *ctx) argument 1096 emit_ld(u8 rd, s32 off, u8 rs1, struct rv_jit_context *ctx) argument 1116 emit_subw(u8 rd, u8 rs1, u8 rs2, struct rv_jit_context *ctx) argument 1124 emit_sextb(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 1135 emit_sexth(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 1146 emit_sextw(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 1151 emit_zexth(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 1162 emit_zextw(u8 rd, u8 rs, struct rv_jit_context *ctx) argument 1168 emit_bswap(u8 rd, s32 imm, struct rv_jit_context *ctx) argument [all...] |