]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/cpu/arm/assembler/assembler.factor
arm: implement prolog and epilog
[factor.git] / basis / cpu / arm / assembler / assembler.factor
index 0e687a40fb4b8faae7ddadd02ce0663e56a17015..ec4a6c2178c4411fb13d8e28aa1c7de2f5eb0861 100644 (file)
@@ -41,6 +41,16 @@ ERROR: arm64-encoding-imm original n-bits-requested truncated ;
 : STP-signed-offset ( offset register-offset register-mid register -- )
     [ 8 / 7 bits ] 3dip swapd STPsoff64-encode ;
 
+
+: LDP-pre ( offset register-offset register-mid register -- )
+    [ 8 / 7 bits ] 3dip swapd LDPpre64-encode ;
+
+: LDP-post ( offset register-offset register-mid register -- )
+    [ 8 / 7 bits ] 3dip swapd LDPpost64-encode ;
+
+: LDP-signed-offset ( offset register-offset register-mid register -- )
+    [ 8 / 7 bits ] 3dip swapd LDPsoff64-encode ;
+
 ! Some instructions allow an immediate literal of n bits
 ! or n bits shifted. This means there are invalid immediate
 ! values, e.g. imm12 of 1, 4096, but not 4097