[clang] 9e2c0f0 - [docs] Add llvm & clang release notes for LoongArch (#79097)

via cfe-commits cfe-commits at lists.llvm.org
Mon Jan 22 23:27:11 PST 2024


Author: Lu Weining
Date: 2024-01-23T15:27:06+08:00
New Revision: 9e2c0f000549991ea5585d6799ade92811a8faae

URL: https://github.com/llvm/llvm-project/commit/9e2c0f000549991ea5585d6799ade92811a8faae
DIFF: https://github.com/llvm/llvm-project/commit/9e2c0f000549991ea5585d6799ade92811a8faae.diff

LOG: [docs] Add llvm & clang release notes for LoongArch (#79097)

Added: 
    

Modified: 
    clang/docs/ReleaseNotes.rst
    llvm/docs/ReleaseNotes.rst

Removed: 
    


################################################################################
diff  --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index cb15dfb99bec977..93eecbe0e1363de 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -1189,8 +1189,14 @@ Windows Support
 
 LoongArch Support
 ^^^^^^^^^^^^^^^^^
-- The ``model`` attribute is now supported for overriding the default code
-  model used to access global variables. The following values are supported:
+- Added builtins support for all LSX (128-bits SIMD) and LASX (256-bits SIMD)
+  instructions.
+- Added builtins support for approximate calculation instructions that were
+  introduced in LoongArch Reference Manual V1.10.
+- Made ``-mcmodel=`` compatible with LoongArch gcc that accepted ``normal``,
+  ``medium`` and ``extreme``.
+- The ``model`` attribute was now supported for overriding the default code
+  model used to access global variables. The following values were supported:
   ``normal``, ``medium`` and ``extreme``.
 
   *Example Code*:
@@ -1199,6 +1205,10 @@ LoongArch Support
 
      int var __attribute((model("extreme")));
 
+- Default to ``-fno-direct-access-external-data`` for non-PIC.
+- An ABI mismatch with gcc/g++ about empty structs/unions passing was fixed.
+- ``_mcount`` was generated instead of ``mcount``.
+
 RISC-V Support
 ^^^^^^^^^^^^^^
 - Unaligned memory accesses can be toggled by ``-m[no-]unaligned-access`` or the

diff  --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index c17c834c8081b8a..8d75b6415e557b8 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -132,8 +132,21 @@ Changes to the Hexagon Backend
 
 Changes to the LoongArch Backend
 --------------------------------
-* The code model of global variables can now be overridden by means of
-  the newly added LLVM IR attribute, ``code_model``.
+
+* Added intrinsics support for all LSX (128-bits SIMD) and LASX (256-bits SIMD)
+  instructions.
+* Added definition and intrinsics support for new instructions that were
+  introduced in LoongArch Reference Manual V1.10.
+* Emitted adjacent ``pcaddu18i+jirl`` instrunction sequence with one relocation
+  ``R_LARCH_CALL36`` instead of ``pcalau12i+jirl`` with two relocations
+  ``R_LARCH_PCALA_{HI20,LO12}`` for function call in medium code model.
+* The code model of global variables can now be overridden by means of the newly
+  added LLVM IR attribute, ``code_model``.
+* Added support for the ``llvm.is.fpclass`` intrinsic.
+* ``mulodi4`` and ``muloti4`` libcalls were disabled due to absence in libgcc.
+* Added initial support for auto vectorization.
+* Added initial support for linker relaxation.
+* Assorted codegen improvements.
 
 Changes to the MIPS Backend
 ---------------------------


        


More information about the cfe-commits mailing list