[PATCH] D137528: [LangRef][LoongArch] Update inline asm constraint code and operand modifier

Xiaodong Liu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 10 22:26:43 PST 2022


This revision was automatically updated to reflect the committed changes.
Closed by commit rG070ab2bb0b50: [LangRef][LoongArch] Update inline asm constraint code and operand modifier (authored by XiaodongLoong).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D137528/new/

https://reviews.llvm.org/D137528

Files:
  llvm/docs/LangRef.rst


Index: llvm/docs/LangRef.rst
===================================================================
--- llvm/docs/LangRef.rst
+++ llvm/docs/LangRef.rst
@@ -4878,13 +4878,30 @@
 - ``x``: A 32, 64, or 128-bit floating-point/SIMD register in the ranges
   ``s0-s15``, ``d0-d7``, or ``q0-q3``, respectively.
 
-
 Hexagon:
 
 - ``o``, ``v``: A memory address operand, treated the same as constraint ``m``,
   at the moment.
 - ``r``: A 32 or 64-bit register.
 
+LoongArch:
+
+- ``f``: A floating-point register (if available).
+- ``k``: A memory operand whose address is formed by a base register and
+  (optionally scaled) index register.
+- ``l``: A signed 16-bit constant.
+- ``m``: A memory operand whose address is formed by a base register and
+  offset that is suitable for use in instructions with the same addressing
+  mode as st.w and ld.w.
+- ``I``: A signed 12-bit constant (for arithmetic instructions).
+- ``J``: An immediate integer zero.
+- ``K``: An unsigned 12-bit constant (for logic instructions).
+- ``ZB``: An address that is held in a general-purpose register. The offset
+  is zero.
+- ``ZC``: A memory operand whose address is formed by a base register and
+  offset that is suitable for use in instructions with the same addressing
+  mode as ll.w and sc.w.
+
 MSP430:
 
 - ``r``: An 8 or 16-bit register.
@@ -5109,6 +5126,10 @@
 - ``I``: Print the letter 'i' if the operand is an integer constant, otherwise
   nothing. Used to print 'addi' vs 'add' instructions.
 
+LoongArch:
+
+- ``z``: Print $zero register if operand is zero, otherwise print it normally.
+
 MSP430:
 
 No additional modifiers.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D137528.474664.patch
Type: text/x-patch
Size: 1619 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221111/a15f8575/attachment.bin>


More information about the llvm-commits mailing list