Ast.Addressing_modemodule Offset : sig ... endtype _ t = private | Reg : [ `GP of [< `X | `SP ] ] Reg.t -> [> `Base_reg ] t| Offset_twelve_unsigned_scaled : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Twelve_unsigned_scaled ] Addressing_offset.t -> [> `Offset_twelve_unsigned_scaled ]
t| Offset_nine_signed_unscaled : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Nine_signed_unscaled ] Addressing_offset.t -> [> `Offset_nine_signed_unscaled ]
t| Offset_sym : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Twelve ] Symbol.t -> [> `Offset_sym ] tPC-relative literal load addressing. Architecturally, LDR Xt, <label> encodes a 19-bit signed offset from PC to the label (±1MB range). No base register is involved.
Note: The emitter currently uses ADRP+LDR sequences instead of true literal loads, which allows arbitrary distances. This addressing mode is available for future use if needed.
*)| Literal : [ `Nineteen ] Symbol.t -> [> `Literal ] t| Pre : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Nine_signed_unscaled ] Offset.t -> [> `Pre ] t| Post : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Nine_signed_unscaled ] Offset.t -> [> `Post ] t| Offset_pair : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Seven_signed ] Offset.t -> [> `Offset_pair ] t| Pre_pair : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Seven_signed ] Offset.t -> [> `Pre_pair ] t| Post_pair : [ `GP of [< `X | `SP ] ] Reg.t
* [ `Seven_signed ] Offset.t -> [> `Post_pair ] t