libTriton version 1.0 build 1592
Loading...
Searching...
No Matches
initOpcodesNamespace.cpp
Go to the documentation of this file.
1
2/*
3** Copyright (C) - Triton
4**
5** This program is under the terms of the Apache License 2.0.
6*/
7
13#ifdef COMPILE_RISCV
15#endif
17
18
19
2362namespace triton {
2363 namespace bindings {
2364 namespace python {
2365
2366 void initOpcodesNamespace(PyObject* opcodesDict) {
2367 PyDict_Clear(opcodesDict);
2368
2369 PyObject* x86OpcodesDict = xPyDict_New();
2370
3666
3667 PyObject* x86OpcodesDictClass = xPyClass_New(nullptr, x86OpcodesDict, xPyString_FromString("X86"));
3668 xPyDict_SetItemString(opcodesDict, "X86", x86OpcodesDictClass);
3669
3670 PyObject* Aarch64OpcodesDict = xPyDict_New();
3671
4088
4089 PyObject* Aarch64OpcodesDictClass = xPyClass_New(nullptr, Aarch64OpcodesDict, xPyString_FromString("AARCH64"));
4090 xPyDict_SetItemString(opcodesDict, "AARCH64", Aarch64OpcodesDictClass);
4091
4092 PyObject* arm32OpcodesDict = xPyDict_New();
4093
4527
4528 PyObject* arm32OpcodesDictClass = xPyClass_New(nullptr, arm32OpcodesDict, xPyString_FromString("ARM32"));
4529 xPyDict_SetItemString(opcodesDict, "ARM32", arm32OpcodesDictClass);
4530
4531
4532 #ifdef COMPILE_RISCV
4533 PyObject* riscv64OpcodesDict = xPyDict_New();
4534
4535 xPyDict_SetItemString(riscv64OpcodesDict, "ADD", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADD));
4536 xPyDict_SetItemString(riscv64OpcodesDict, "ADDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADDI));
4537 xPyDict_SetItemString(riscv64OpcodesDict, "ADDIW", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADDIW));
4538 xPyDict_SetItemString(riscv64OpcodesDict, "ADDW", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADDW));
4539 xPyDict_SetItemString(riscv64OpcodesDict, "AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_AND));
4540 xPyDict_SetItemString(riscv64OpcodesDict, "ANDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ANDI));
4541 xPyDict_SetItemString(riscv64OpcodesDict, "AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_AND));
4542 xPyDict_SetItemString(riscv64OpcodesDict, "AUIPC", PyLong_FromUint32(triton::arch::riscv::ID_INS_AUIPC));
4543 xPyDict_SetItemString(riscv64OpcodesDict, "BEQ", PyLong_FromUint32(triton::arch::riscv::ID_INS_BEQ));
4544 xPyDict_SetItemString(riscv64OpcodesDict, "BGE", PyLong_FromUint32(triton::arch::riscv::ID_INS_BGE));
4545 xPyDict_SetItemString(riscv64OpcodesDict, "BGEU", PyLong_FromUint32(triton::arch::riscv::ID_INS_BGEU));
4546 xPyDict_SetItemString(riscv64OpcodesDict, "BLT", PyLong_FromUint32(triton::arch::riscv::ID_INS_BLT));
4547 xPyDict_SetItemString(riscv64OpcodesDict, "BLTU", PyLong_FromUint32(triton::arch::riscv::ID_INS_BLTU));
4548 xPyDict_SetItemString(riscv64OpcodesDict, "BNE", PyLong_FromUint32(triton::arch::riscv::ID_INS_BNE));
4549 xPyDict_SetItemString(riscv64OpcodesDict, "DIV", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIV));
4550 xPyDict_SetItemString(riscv64OpcodesDict, "DIVU", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIVU));
4551 xPyDict_SetItemString(riscv64OpcodesDict, "DIVUW", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIVUW));
4552 xPyDict_SetItemString(riscv64OpcodesDict, "DIVW", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIVW));
4553 xPyDict_SetItemString(riscv64OpcodesDict, "JAL", PyLong_FromUint32(triton::arch::riscv::ID_INS_JAL));
4554 xPyDict_SetItemString(riscv64OpcodesDict, "JALR", PyLong_FromUint32(triton::arch::riscv::ID_INS_JALR));
4555 xPyDict_SetItemString(riscv64OpcodesDict, "LB", PyLong_FromUint32(triton::arch::riscv::ID_INS_LB));
4556 xPyDict_SetItemString(riscv64OpcodesDict, "LBU", PyLong_FromUint32(triton::arch::riscv::ID_INS_LBU));
4557 xPyDict_SetItemString(riscv64OpcodesDict, "LD", PyLong_FromUint32(triton::arch::riscv::ID_INS_LD));
4558 xPyDict_SetItemString(riscv64OpcodesDict, "LH", PyLong_FromUint32(triton::arch::riscv::ID_INS_LH));
4559 xPyDict_SetItemString(riscv64OpcodesDict, "LHU", PyLong_FromUint32(triton::arch::riscv::ID_INS_LHU));
4560 xPyDict_SetItemString(riscv64OpcodesDict, "LUI", PyLong_FromUint32(triton::arch::riscv::ID_INS_LUI));
4561 xPyDict_SetItemString(riscv64OpcodesDict, "LW", PyLong_FromUint32(triton::arch::riscv::ID_INS_LW));
4562 xPyDict_SetItemString(riscv64OpcodesDict, "LWU", PyLong_FromUint32(triton::arch::riscv::ID_INS_LWU));
4563 xPyDict_SetItemString(riscv64OpcodesDict, "MUL", PyLong_FromUint32(triton::arch::riscv::ID_INS_MUL));
4564 xPyDict_SetItemString(riscv64OpcodesDict, "MULH ", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULH));
4565 xPyDict_SetItemString(riscv64OpcodesDict, "MULHSU", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULHSU));
4566 xPyDict_SetItemString(riscv64OpcodesDict, "MULHU", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULHU));
4567 xPyDict_SetItemString(riscv64OpcodesDict, "MULW", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULW));
4568 xPyDict_SetItemString(riscv64OpcodesDict, "OR", PyLong_FromUint32(triton::arch::riscv::ID_INS_OR));
4569 xPyDict_SetItemString(riscv64OpcodesDict, "ORI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ORI));
4570 xPyDict_SetItemString(riscv64OpcodesDict, "REM", PyLong_FromUint32(triton::arch::riscv::ID_INS_REM));
4571 xPyDict_SetItemString(riscv64OpcodesDict, "REMU", PyLong_FromUint32(triton::arch::riscv::ID_INS_REMU));
4572 xPyDict_SetItemString(riscv64OpcodesDict, "REMUW", PyLong_FromUint32(triton::arch::riscv::ID_INS_REMUW));
4573 xPyDict_SetItemString(riscv64OpcodesDict, "REMW", PyLong_FromUint32(triton::arch::riscv::ID_INS_REMW));
4574 xPyDict_SetItemString(riscv64OpcodesDict, "SB", PyLong_FromUint32(triton::arch::riscv::ID_INS_SB));
4575 xPyDict_SetItemString(riscv64OpcodesDict, "SD", PyLong_FromUint32(triton::arch::riscv::ID_INS_SD));
4576 xPyDict_SetItemString(riscv64OpcodesDict, "SH", PyLong_FromUint32(triton::arch::riscv::ID_INS_SH));
4577 xPyDict_SetItemString(riscv64OpcodesDict, "SLL", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLL));
4578 xPyDict_SetItemString(riscv64OpcodesDict, "SLLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLLI));
4579 xPyDict_SetItemString(riscv64OpcodesDict, "SLLIW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLLIW));
4580 xPyDict_SetItemString(riscv64OpcodesDict, "SLLW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLLW));
4581 xPyDict_SetItemString(riscv64OpcodesDict, "SLT", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLT));
4582 xPyDict_SetItemString(riscv64OpcodesDict, "SLTI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTI));
4583 xPyDict_SetItemString(riscv64OpcodesDict, "SLTIU", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTIU));
4584 xPyDict_SetItemString(riscv64OpcodesDict, "SLTU", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTU));
4585 xPyDict_SetItemString(riscv64OpcodesDict, "SRA", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRA));
4586 xPyDict_SetItemString(riscv64OpcodesDict, "SRAI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRAI));
4587 xPyDict_SetItemString(riscv64OpcodesDict, "SRAIW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRAIW));
4588 xPyDict_SetItemString(riscv64OpcodesDict, "SRAW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRAW));
4589 xPyDict_SetItemString(riscv64OpcodesDict, "SRL", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRL));
4590 xPyDict_SetItemString(riscv64OpcodesDict, "SRLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRLI));
4591 xPyDict_SetItemString(riscv64OpcodesDict, "SRLIW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRLIW));
4592 xPyDict_SetItemString(riscv64OpcodesDict, "SRLW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRLW));
4593 xPyDict_SetItemString(riscv64OpcodesDict, "SUB", PyLong_FromUint32(triton::arch::riscv::ID_INS_SUB));
4594 xPyDict_SetItemString(riscv64OpcodesDict, "SUBW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SUBW));
4595 xPyDict_SetItemString(riscv64OpcodesDict, "SW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SW));
4596 xPyDict_SetItemString(riscv64OpcodesDict, "XOR", PyLong_FromUint32(triton::arch::riscv::ID_INS_XOR));
4597 xPyDict_SetItemString(riscv64OpcodesDict, "XORI", PyLong_FromUint32(triton::arch::riscv::ID_INS_XORI));
4598
4599 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADD", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADD));
4600 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI));
4601 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADDI16SP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI16SP));
4602 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADDI4SPN", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI4SPN));
4603 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADDIW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDIW));
4604 xPyDict_SetItemString(riscv64OpcodesDict, "C_ADDW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDW));
4605 xPyDict_SetItemString(riscv64OpcodesDict, "C_AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_AND));
4606 xPyDict_SetItemString(riscv64OpcodesDict, "C_ANDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ANDI));
4607 xPyDict_SetItemString(riscv64OpcodesDict, "C_BEQZ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_BEQZ));
4608 xPyDict_SetItemString(riscv64OpcodesDict, "C_BNEZ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_BNEZ));
4609 xPyDict_SetItemString(riscv64OpcodesDict, "C_J", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_J));
4610 xPyDict_SetItemString(riscv64OpcodesDict, "C_JALR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_JALR));
4611 xPyDict_SetItemString(riscv64OpcodesDict, "C_JR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_JR));
4612 xPyDict_SetItemString(riscv64OpcodesDict, "C_LD", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LD));
4613 xPyDict_SetItemString(riscv64OpcodesDict, "C_LDSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LDSP));
4614 xPyDict_SetItemString(riscv64OpcodesDict, "C_LI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LI));
4615 xPyDict_SetItemString(riscv64OpcodesDict, "C_LUI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LUI));
4616 xPyDict_SetItemString(riscv64OpcodesDict, "C_LW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LW));
4617 xPyDict_SetItemString(riscv64OpcodesDict, "C_LWSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LWSP));
4618 xPyDict_SetItemString(riscv64OpcodesDict, "C_MV", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_MV));
4619 xPyDict_SetItemString(riscv64OpcodesDict, "C_NOP ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_NOP));
4620 xPyDict_SetItemString(riscv64OpcodesDict, "C_OR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_OR));
4621 xPyDict_SetItemString(riscv64OpcodesDict, "C_SD", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SD));
4622 xPyDict_SetItemString(riscv64OpcodesDict, "C_SDSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SDSP));
4623 xPyDict_SetItemString(riscv64OpcodesDict, "C_SLLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SLLI));
4624 xPyDict_SetItemString(riscv64OpcodesDict, "C_SRAI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SRAI));
4625 xPyDict_SetItemString(riscv64OpcodesDict, "C_SRLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SRLI));
4626 xPyDict_SetItemString(riscv64OpcodesDict, "C_SUB", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SUB));
4627 xPyDict_SetItemString(riscv64OpcodesDict, "C_SUBW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SUBW));
4628 xPyDict_SetItemString(riscv64OpcodesDict, "C_SW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SW));
4629 xPyDict_SetItemString(riscv64OpcodesDict, "C_SWSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SWSP));
4630 xPyDict_SetItemString(riscv64OpcodesDict, "C_XOR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_XOR));
4631
4632 PyObject* riscv64OpcodesDictClass = xPyClass_New(nullptr, riscv64OpcodesDict, xPyString_FromString("RV64"));
4633 xPyDict_SetItemString(opcodesDict, "RV64", riscv64OpcodesDictClass);
4634
4635
4636 PyObject* riscv32OpcodesDict = xPyDict_New();
4637
4638 xPyDict_SetItemString(riscv32OpcodesDict, "ADD", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADD));
4639 xPyDict_SetItemString(riscv32OpcodesDict, "ADDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ADDI));
4640 xPyDict_SetItemString(riscv32OpcodesDict, "AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_AND));
4641 xPyDict_SetItemString(riscv32OpcodesDict, "ANDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ANDI));
4642 xPyDict_SetItemString(riscv32OpcodesDict, "AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_AND));
4643 xPyDict_SetItemString(riscv32OpcodesDict, "AUIPC", PyLong_FromUint32(triton::arch::riscv::ID_INS_AUIPC));
4644 xPyDict_SetItemString(riscv32OpcodesDict, "BEQ", PyLong_FromUint32(triton::arch::riscv::ID_INS_BEQ));
4645 xPyDict_SetItemString(riscv32OpcodesDict, "BGE", PyLong_FromUint32(triton::arch::riscv::ID_INS_BGE));
4646 xPyDict_SetItemString(riscv32OpcodesDict, "BGEU", PyLong_FromUint32(triton::arch::riscv::ID_INS_BGEU));
4647 xPyDict_SetItemString(riscv32OpcodesDict, "BLT", PyLong_FromUint32(triton::arch::riscv::ID_INS_BLT));
4648 xPyDict_SetItemString(riscv32OpcodesDict, "BLTU", PyLong_FromUint32(triton::arch::riscv::ID_INS_BLTU));
4649 xPyDict_SetItemString(riscv32OpcodesDict, "BNE", PyLong_FromUint32(triton::arch::riscv::ID_INS_BNE));
4650 xPyDict_SetItemString(riscv32OpcodesDict, "DIV", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIV));
4651 xPyDict_SetItemString(riscv32OpcodesDict, "DIVU", PyLong_FromUint32(triton::arch::riscv::ID_INS_DIVU));
4652 xPyDict_SetItemString(riscv32OpcodesDict, "JAL", PyLong_FromUint32(triton::arch::riscv::ID_INS_JAL));
4653 xPyDict_SetItemString(riscv32OpcodesDict, "JALR", PyLong_FromUint32(triton::arch::riscv::ID_INS_JALR));
4654 xPyDict_SetItemString(riscv32OpcodesDict, "LB", PyLong_FromUint32(triton::arch::riscv::ID_INS_LB));
4655 xPyDict_SetItemString(riscv32OpcodesDict, "LBU", PyLong_FromUint32(triton::arch::riscv::ID_INS_LBU));
4656 xPyDict_SetItemString(riscv32OpcodesDict, "LD", PyLong_FromUint32(triton::arch::riscv::ID_INS_LD));
4657 xPyDict_SetItemString(riscv32OpcodesDict, "LH", PyLong_FromUint32(triton::arch::riscv::ID_INS_LH));
4658 xPyDict_SetItemString(riscv32OpcodesDict, "LHU", PyLong_FromUint32(triton::arch::riscv::ID_INS_LHU));
4659 xPyDict_SetItemString(riscv32OpcodesDict, "LUI", PyLong_FromUint32(triton::arch::riscv::ID_INS_LUI));
4660 xPyDict_SetItemString(riscv32OpcodesDict, "LW", PyLong_FromUint32(triton::arch::riscv::ID_INS_LW));
4661 xPyDict_SetItemString(riscv32OpcodesDict, "MUL", PyLong_FromUint32(triton::arch::riscv::ID_INS_MUL));
4662 xPyDict_SetItemString(riscv32OpcodesDict, "MULH ", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULH));
4663 xPyDict_SetItemString(riscv32OpcodesDict, "MULHSU", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULHSU));
4664 xPyDict_SetItemString(riscv32OpcodesDict, "MULHU", PyLong_FromUint32(triton::arch::riscv::ID_INS_MULHU));
4665 xPyDict_SetItemString(riscv32OpcodesDict, "OR", PyLong_FromUint32(triton::arch::riscv::ID_INS_OR));
4666 xPyDict_SetItemString(riscv32OpcodesDict, "ORI", PyLong_FromUint32(triton::arch::riscv::ID_INS_ORI));
4667 xPyDict_SetItemString(riscv32OpcodesDict, "REM", PyLong_FromUint32(triton::arch::riscv::ID_INS_REM));
4668 xPyDict_SetItemString(riscv32OpcodesDict, "REMU", PyLong_FromUint32(triton::arch::riscv::ID_INS_REMU));
4669 xPyDict_SetItemString(riscv32OpcodesDict, "SB", PyLong_FromUint32(triton::arch::riscv::ID_INS_SB));
4670 xPyDict_SetItemString(riscv32OpcodesDict, "SH", PyLong_FromUint32(triton::arch::riscv::ID_INS_SH));
4671 xPyDict_SetItemString(riscv32OpcodesDict, "SLL", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLL));
4672 xPyDict_SetItemString(riscv32OpcodesDict, "SLLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLLI));
4673 xPyDict_SetItemString(riscv32OpcodesDict, "SLT", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLT));
4674 xPyDict_SetItemString(riscv32OpcodesDict, "SLTI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTI));
4675 xPyDict_SetItemString(riscv32OpcodesDict, "SLTIU", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTIU));
4676 xPyDict_SetItemString(riscv32OpcodesDict, "SLTU", PyLong_FromUint32(triton::arch::riscv::ID_INS_SLTU));
4677 xPyDict_SetItemString(riscv32OpcodesDict, "SRA", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRA));
4678 xPyDict_SetItemString(riscv32OpcodesDict, "SRAI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRAI));
4679 xPyDict_SetItemString(riscv32OpcodesDict, "SRL", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRL));
4680 xPyDict_SetItemString(riscv32OpcodesDict, "SRLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_SRLI));
4681 xPyDict_SetItemString(riscv32OpcodesDict, "SUB", PyLong_FromUint32(triton::arch::riscv::ID_INS_SUB));
4682 xPyDict_SetItemString(riscv32OpcodesDict, "SW", PyLong_FromUint32(triton::arch::riscv::ID_INS_SW));
4683 xPyDict_SetItemString(riscv32OpcodesDict, "XOR", PyLong_FromUint32(triton::arch::riscv::ID_INS_XOR));
4684 xPyDict_SetItemString(riscv32OpcodesDict, "XORI", PyLong_FromUint32(triton::arch::riscv::ID_INS_XORI));
4685
4686 xPyDict_SetItemString(riscv32OpcodesDict, "C_ADD", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADD));
4687 xPyDict_SetItemString(riscv32OpcodesDict, "C_ADDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI));
4688 xPyDict_SetItemString(riscv32OpcodesDict, "C_ADDI16SP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI16SP));
4689 xPyDict_SetItemString(riscv32OpcodesDict, "C_ADDI4SPN", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ADDI4SPN));
4690 xPyDict_SetItemString(riscv32OpcodesDict, "C_AND", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_AND));
4691 xPyDict_SetItemString(riscv32OpcodesDict, "C_ANDI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_ANDI));
4692 xPyDict_SetItemString(riscv32OpcodesDict, "C_BEQZ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_BEQZ));
4693 xPyDict_SetItemString(riscv32OpcodesDict, "C_BNEZ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_BNEZ));
4694 xPyDict_SetItemString(riscv32OpcodesDict, "C_J", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_J));
4695 xPyDict_SetItemString(riscv32OpcodesDict, "C_JAL", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_JAL));
4696 xPyDict_SetItemString(riscv32OpcodesDict, "C_JALR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_JALR));
4697 xPyDict_SetItemString(riscv32OpcodesDict, "C_JR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_JR));
4698 xPyDict_SetItemString(riscv32OpcodesDict, "C_LI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LI));
4699 xPyDict_SetItemString(riscv32OpcodesDict, "C_LUI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LUI));
4700 xPyDict_SetItemString(riscv32OpcodesDict, "C_LW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LW));
4701 xPyDict_SetItemString(riscv32OpcodesDict, "C_LWSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_LWSP));
4702 xPyDict_SetItemString(riscv32OpcodesDict, "C_MV", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_MV));
4703 xPyDict_SetItemString(riscv32OpcodesDict, "C_NOP ", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_NOP));
4704 xPyDict_SetItemString(riscv32OpcodesDict, "C_OR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_OR));
4705 xPyDict_SetItemString(riscv32OpcodesDict, "C_SLLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SLLI));
4706 xPyDict_SetItemString(riscv32OpcodesDict, "C_SRAI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SRAI));
4707 xPyDict_SetItemString(riscv32OpcodesDict, "C_SRLI", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SRLI));
4708 xPyDict_SetItemString(riscv32OpcodesDict, "C_SUB", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SUB));
4709 xPyDict_SetItemString(riscv32OpcodesDict, "C_SW", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SW));
4710 xPyDict_SetItemString(riscv32OpcodesDict, "C_SWSP", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_SWSP));
4711 xPyDict_SetItemString(riscv32OpcodesDict, "C_XOR", PyLong_FromUint32(triton::arch::riscv::ID_INS_C_XOR));
4712
4713 PyObject* riscv32OpcodesDictClass = xPyClass_New(nullptr, riscv32OpcodesDict, xPyString_FromString("RV32"));
4714 xPyDict_SetItemString(opcodesDict, "RV32", riscv32OpcodesDictClass);
4715 #endif
4716 }
4717
4718 }; /* python namespace */
4719 }; /* bindings namespace */
4720}; /* triton namespace */
PyObject * xPyClass_New(PyObject *b, PyObject *d, PyObject *n)
Creates a PyClass and raises an exception if it fails. dict is copied in Py3 ! All references are dec...
PyObject * xPyString_FromString(const char *v)
Creates a PyString and raises an exception if it fails.
void initOpcodesNamespace(PyObject *opcodesDict)
Initializes the OPCODE python namespace.
PyObject * xPyDict_New(void)
Creates a PyDict and raises an exception if it fails.
PyObject * PyLong_FromUint32(triton::uint32 value)
Returns a pyObject from a triton::uint32.
Definition utils.cpp:322
int xPyDict_SetItemString(PyObject *p, const char *key, PyObject *val)
Same as PyDict_SetItemString but decrements reference on object.
@ ID_INS_AESDECLAST
AESDECLAST.
@ ID_INS_VFNMADD231PD
VFNMADD231PD.
@ ID_INS_VGATHERPF1DPD
VGATHERPF1DPD.
@ ID_INS_VCVTPD2UDQ
VCVTPD2UDQ.
@ ID_INS_VRNDSCALEPD
VRNDSCALEPD.
@ ID_INS_VFMSUB231SD
VFMSUB231SD.
@ ID_INS_VFNMADD132SD
VFNMADD132SD.
@ ID_INS_VFNMADD213PD
VFNMADD213PD.
@ ID_INS_VFNMSUB231PS
VFNMSUB231PS.
@ ID_INS_VGATHERPF0QPD
VGATHERPF0QPD.
@ ID_INS_VPHMINPOSUW
VPHMINPOSUW.
@ ID_INS_VFNMADD132SS
VFNMADD132SS.
@ ID_INS_VFMSUBADD231PS
VFMSUBADD231PS.
@ ID_INS_VFNMADD213PS
VFNMADD213PS.
@ ID_INS_VSCATTERDPS
VSCATTERDPS.
@ ID_INS_VPBROADCASTB
VPBROADCASTB.
@ ID_INS_VSCATTERQPD
VSCATTERQPD.
@ ID_INS_VPSCATTERQQ
VPSCATTERQQ.
@ ID_INS_VEXTRACTI32X4
VEXTRACTI32X4.
@ ID_INS_VGATHERQPS
VGATHERQPS.
@ ID_INS_VCVTTPS2UDQ
VCVTTPS2UDQ.
@ ID_INS_VFMSUBADD213PD
VFMSUBADD213PD.
@ ID_INS_VGATHERPF0DPD
VGATHERPF0DPD.
@ ID_INS_VFNMSUB231SS
VFNMSUB231SS.
@ ID_INS_VRNDSCALEPS
VRNDSCALEPS.
@ ID_INS_VPBROADCASTD
VPBROADCASTD.
@ ID_INS_VFNMSUB231PD
VFNMSUB231PD.
@ ID_INS_VFMSUB213PS
VFMSUB213PS.
@ ID_INS_VFMADDSUBPD
VFMADDSUBPD.
@ ID_INS_VFMSUB213PD
VFMSUB213PD.
@ ID_INS_VFMADDSUBPS
VFMADDSUBPS.
@ ID_INS_VPUNPCKHQDQ
VPUNPCKHQDQ.
@ ID_INS_VCVTTPD2DQX
VCVTTPD2DQX.
@ ID_INS_VFNMADD213SD
VFNMADD213SD.
@ ID_INS_VCVTTSD2SI
VCVTTSD2SI.
@ ID_INS_SHA256MSG1
SHA256MSG1.
@ ID_INS_VFMADDSUB213PS
VFMADDSUB213PS.
@ ID_INS_VMASKMOVPS
VMASKMOVPS.
@ ID_INS_VCVTUDQ2PD
VCVTUDQ2PD.
@ ID_INS_VFMADD132SS
VFMADD132SS.
@ ID_INS_VFMSUBADD231PD
VFMSUBADD231PD.
@ ID_INS_VAESKEYGENASSIST
VAESKEYGENASSIST.
@ ID_INS_VINSERTF32X4
VINSERTF32X4.
@ ID_INS_VBROADCASTSS
VBROADCASTSS.
@ ID_INS_VPSCATTERDD
VPSCATTERDD.
@ ID_INS_VFMSUB132PD
VFMSUB132PD.
@ ID_INS_VPCONFLICTD
VPCONFLICTD.
@ ID_INS_VMASKMOVPD
VMASKMOVPD.
@ ID_INS_VSCATTERQPS
VSCATTERQPS.
@ ID_INS_VRNDSCALESS
VRNDSCALESS.
@ ID_INS_VFNMSUB213SS
VFNMSUB213SS.
@ ID_INS_VCVTTSS2SI
VCVTTSS2SI.
@ ID_INS_VFMSUB231SS
VFMSUB231SS.
@ ID_INS_VBROADCASTI128
VBROADCASTI128.
@ ID_INS_VSCATTERPF0QPS
VSCATTERPF0QPS.
@ ID_INS_VGATHERPF1DPS
VGATHERPF1DPS.
@ ID_INS_VPCONFLICTQ
VPCONFLICTQ.
@ ID_INS_VCVTUSI2SD
VCVTUSI2SD.
@ ID_INS_VPBROADCASTMW2D
VPBROADCASTMW2D.
@ ID_INS_VGATHERPF1QPS
VGATHERPF1QPS.
@ ID_INS_VFMSUBADDPD
VFMSUBADDPD.
@ ID_INS_VFMSUB132SS
VFMSUB132SS.
@ ID_INS_VINSERTF128
VINSERTF128.
@ ID_INS_VFMADD213SS
VFMADD213SS.
@ ID_INS_VCVTPD2PSX
VCVTPD2PSX.
@ ID_INS_VFNMSUB132SD
VFNMSUB132SD.
@ ID_INS_PREFETCHT2
PREFETCHT2.
@ ID_INS_VRNDSCALESD
VRNDSCALESD.
@ ID_INS_AESKEYGENASSIST
AESKEYGENASSIST.
@ ID_INS_VGATHERQPD
VGATHERQPD.
@ ID_INS_VGATHERDPD
VGATHERDPD.
@ ID_INS_VFMADDSUB231PD
VFMADDSUB231PD.
@ ID_INS_VPSCATTERQD
VPSCATTERQD.
@ ID_INS_VFNMADD231SD
VFNMADD231SD.
@ ID_INS_VFMADD132PD
VFMADD132PD.
@ ID_INS_VFNMSUB231SD
VFNMSUB231SD.
@ ID_INS_SHA256RNDS2
SHA256RNDS2.
@ ID_INS_VSCATTERPF1DPS
VSCATTERPF1DPS.
@ ID_INS_VFMADD231PS
VFMADD231PS.
@ ID_INS_VFMADDSUB132PS
VFMADDSUB132PS.
@ ID_INS_VCVTTPD2UDQ
VCVTTPD2UDQ.
@ ID_INS_VFMSUB213SS
VFMSUB213SS.
@ ID_INS_VFNMADD132PS
VFNMADD132PS.
@ ID_INS_VFNMSUB132PD
VFNMSUB132PD.
@ ID_INS_VFNMSUB213PD
VFNMSUB213PD.
@ ID_INS_VAESENCLAST
VAESENCLAST.
@ ID_INS_VSCATTERDPD
VSCATTERDPD.
@ ID_INS_PREFETCHNTA
PREFETCHNTA.
@ ID_INS_VPBROADCASTMB2Q
VPBROADCASTMB2Q.
@ ID_INS_VEXTRACTPS
VEXTRACTPS.
@ ID_INS_AESENCLAST
AESENCLAST.
@ ID_INS_PHMINPOSUW
PHMINPOSUW.
@ ID_INS_VFNMADD231SS
VFNMADD231SS.
@ ID_INS_PUNPCKLQDQ
PUNPCKLQDQ.
@ ID_INS_VFNMSUB213SD
VFNMSUB213SD.
@ ID_INS_VCVTUSI2SS
VCVTUSI2SS.
@ ID_INS_VFMSUB231PS
VFMSUB231PS.
@ ID_INS_VBROADCASTI64X4
VBROADCASTI64X4.
@ ID_INS_VFMSUB132SD
VFMSUB132SD.
@ ID_INS_VBROADCASTSD
VBROADCASTSD.
@ ID_INS_VSCATTERPF0DPD
VSCATTERPF0DPD.
@ ID_INS_VFMADD132PS
VFMADD132PS.
@ ID_INS_VBROADCASTF128
VBROADCASTF128.
@ ID_INS_VFMADD213PD
VFMADD213PD.
@ ID_INS_VSCATTERPF1DPD
VSCATTERPF1DPD.
@ ID_INS_VFMSUB132PS
VFMSUB132PS.
@ ID_INS_VMASKMOVDQU
VMASKMOVDQU.
@ ID_INS_PREFETCHT0
PREFETCHT0.
@ ID_INS_VINSERTI128
VINSERTI128.
@ ID_INS_VFMADD231SD
VFMADD231SD.
@ ID_INS_CMPXCHG16B
CMPXCHG16B.
@ ID_INS_VEXTRACTF64X4
VEXTRACTF64X4.
@ ID_INS_VGATHERPF1QPD
VGATHERPF1QPD.
@ ID_INS_VCVTUDQ2PS
VCVTUDQ2PS.
@ ID_INS_VPBROADCASTW
VPBROADCASTW.
@ ID_INS_VINSERTF64X4
VINSERTF64X4.
@ ID_INS_VCVTPS2UDQ
VCVTPS2UDQ.
@ ID_INS_VFNMSUB132PS
VFNMSUB132PS.
@ ID_INS_VBROADCASTI32X4
VBROADCASTI32X4.
@ ID_INS_SHA256MSG2
SHA256MSG2.
@ ID_INS_VCVTSD2USI
VCVTSD2USI.
@ ID_INS_VFMSUBADDPS
VFMSUBADDPS.
@ ID_INS_VPBROADCASTQ
VPBROADCASTQ.
@ ID_INS_VFNMSUB213PS
VFNMSUB213PS.
@ ID_INS_VCVTTPD2DQ
VCVTTPD2DQ.
@ ID_INS_VFMADD213PS
VFMADD213PS.
@ ID_INS_VFNMADD213SS
VFNMADD213SS.
@ ID_INS_VSCATTERPF1QPS
VSCATTERPF1QPS.
@ ID_INS_VCVTTSS2USI
VCVTTSS2USI.
@ ID_INS_VFNMADD132PD
VFNMADD132PD.
@ ID_INS_VSCATTERPF0DPS
VSCATTERPF0DPS.
@ ID_INS_VFMADDSUB231PS
VFMADDSUB231PS.
@ ID_INS_VPSCATTERDQ
VPSCATTERDQ.
@ ID_INS_VFMSUBADD132PD
VFMSUBADD132PD.
@ ID_INS_VCVTPD2DQX
VCVTPD2DQX.
@ ID_INS_VGATHERPF0QPS
VGATHERPF0QPS.
@ ID_INS_VGATHERDPS
VGATHERDPS.
@ ID_INS_VAESDECLAST
VAESDECLAST.
@ ID_INS_VFMADD132SD
VFMADD132SD.
@ ID_INS_VSCATTERPF0QPD
VSCATTERPF0QPD.
@ ID_INS_VEXTRACTF128
VEXTRACTF128.
@ ID_INS_VFMADDSUB213PD
VFMADDSUB213PD.
@ ID_INS_VFNMSUB132SS
VFNMSUB132SS.
@ ID_INS_VFMADDSUB132PD
VFMADDSUB132PD.
@ ID_INS_VFNMADD231PS
VFNMADD231PS.
@ ID_INS_MASKMOVDQU
MASKMOVDQU.
@ ID_INS_VFMSUBADD132PS
VFMSUBADD132PS.
@ ID_INS_VFMADD231SS
VFMADD231SS.
@ ID_INS_VINSERTI32X4
VINSERTI32X4.
@ ID_INS_VFMADD213SD
VFMADD213SD.
@ ID_INS_VEXTRACTI128
VEXTRACTI128.
@ ID_INS_VEXTRACTI64X4
VEXTRACTI64X4.
@ ID_INS_VINSERTI64X4
VINSERTI64X4.
@ ID_INS_VCVTSS2USI
VCVTSS2USI.
@ ID_INS_VGATHERPF0DPS
VGATHERPF0DPS.
@ ID_INS_VFMADD231PD
VFMADD231PD.
@ ID_INS_VPUNPCKLQDQ
VPUNPCKLQDQ.
@ ID_INS_PREFETCHT1
PREFETCHT1.
@ ID_INS_VFMSUB231PD
VFMSUB231PD.
@ ID_INS_VEXTRACTF32X4
VEXTRACTF32X4.
@ ID_INS_VCVTTSD2USI
VCVTTSD2USI.
@ ID_INS_VFMSUB213SD
VFMSUB213SD.
@ ID_INS_VFMSUBADD213PS
VFMSUBADD213PS.
@ ID_INS_VSCATTERPF1QPD
VSCATTERPF1QPD.
@ ID_INS_PUNPCKHQDQ
PUNPCKHQDQ.
@ ID_INS_VCVTTPS2DQ
VCVTTPS2DQ.
The Triton namespace.