package llvm

  1. Overview
  2. Docs

The opcodes for LLVM instructions and constant expressions.

type t =
  1. | Invalid
    (*

    Not an instruction

    *)
  2. | Ret
    (*

    Terminator Instructions

    *)
  3. | Br
  4. | Switch
  5. | IndirectBr
  6. | Invoke
  7. | Invalid2
  8. | Unreachable
  9. | Add
    (*

    Standard Binary Operators

    *)
  10. | FAdd
  11. | Sub
  12. | FSub
  13. | Mul
  14. | FMul
  15. | UDiv
  16. | SDiv
  17. | FDiv
  18. | URem
  19. | SRem
  20. | FRem
  21. | Shl
    (*

    Logical Operators

    *)
  22. | LShr
  23. | AShr
  24. | And
  25. | Or
  26. | Xor
  27. | Alloca
    (*

    Memory Operators

    *)
  28. | Load
  29. | Store
  30. | GetElementPtr
  31. | Trunc
    (*

    Cast Operators

    *)
  32. | ZExt
  33. | SExt
  34. | FPToUI
  35. | FPToSI
  36. | UIToFP
  37. | SIToFP
  38. | FPTrunc
  39. | FPExt
  40. | PtrToInt
  41. | IntToPtr
  42. | BitCast
  43. | ICmp
    (*

    Other Operators

    *)
  44. | FCmp
  45. | PHI
  46. | Call
  47. | Select
  48. | UserOp1
  49. | UserOp2
  50. | VAArg
  51. | ExtractElement
  52. | InsertElement
  53. | ShuffleVector
  54. | ExtractValue
  55. | InsertValue
  56. | Fence
  57. | AtomicCmpXchg
  58. | AtomicRMW
  59. | Resume
  60. | LandingPad
  61. | AddrSpaceCast
  62. | CleanupRet
  63. | CatchRet
  64. | CatchPad
  65. | CleanupPad
  66. | CatchSwitch
  67. | FNeg
  68. | CallBr
  69. | Freeze
OCaml

Innovation. Community. Security.