[all-commits] [llvm/llvm-project] 9d29d9: Relax TLSDESC code sequence.

Zhaoxin Yang via All-commits all-commits at lists.llvm.org
Mon Mar 10 23:47:12 PDT 2025


  Branch: refs/heads/users/ylzsx/r-tlsdesc-noconversion
  Home:   https://github.com/llvm/llvm-project
  Commit: 9d29d9bbeb0695ec90e79017ed0fd420c073e47e
      https://github.com/llvm/llvm-project/commit/9d29d9bbeb0695ec90e79017ed0fd420c073e47e
  Author: yangzhaoxin <yangzhaoxin at loongson.cn>
  Date:   2025-03-11 (Tue, 11 Mar 2025)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    A lld/test/ELF/loongarch-relax-tlsdesc.s

  Log Message:
  -----------
  Relax TLSDESC code sequence.

Original code sequence:
 * pcalau12i  $a0, %desc_pc_hi20(sym_desc)
 * addi.d     $a0, $a0, %desc_pc_lo12(sym_desc)
 * ld.d       $ra, $a0, %desc_ld(sym_desc)
 * jirl       $ra, $ra, %desc_call(sym_desc)

Cannot convert to LE/IE, but relax:
 * pcaddi     $a0, %desc_pcrel_20(sym_desc)
 * ld.d       $ra, $a0, %desc_ld(sym_desc)
 * jirl       $ra, $ra, %desc_call(sym_desc)

TODO: The conversion of TLSDESC GD/LD to LE/IE will implement in a
future patch.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list