Uploaded image for project: 'Embedded Software & Tools'
  1. Embedded Software & Tools
  2. EXT_EP-9437

ELF-only $HI16 assembler relocation operator handled incorrectly, affecting _symval intrinsic

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: High High
    • Code Generation Tools
    • CODEGEN-6527
    • Hide
      C2000_18.1.0.LTS
       C2000_18.12.0.LTS
      Show
      C2000_18.1.0.LTS  C2000_18.12.0.LTS
    • Hide
      C2000_18.1.7.LTS
       C2000_18.12.4.LTS
      Show
      C2000_18.1.7.LTS  C2000_18.12.4.LTS
    • Avoid using _symval and use HI16 instead of $HI16
    • Hide
      The assembler will incorrectly accept the ELF-only relocation operators $HI16 and $LO16 in instructions that expect a 22-bit immediate or symbol, such as MOVL XARn, #22-bit. Further, the assembler will incorrectly emit a 22-bit R_REL22 relocation. In the case of $HI16, this means that the register will be loaded with an incorrect value. The compiler uses the $HI16 and $LO16 operators to implement the _symval() intrinsic. Any code which uses the _symval intrinsic, or uses the $HI16 operator in a 22-bit immediate context may have the incorrect relocation.
      Show
      The assembler will incorrectly accept the ELF-only relocation operators $HI16 and $LO16 in instructions that expect a 22-bit immediate or symbol, such as MOVL XARn, #22-bit. Further, the assembler will incorrectly emit a 22-bit R_REL22 relocation. In the case of $HI16, this means that the register will be loaded with an incorrect value. The compiler uses the $HI16 and $LO16 operators to implement the _symval() intrinsic. Any code which uses the _symval intrinsic, or uses the $HI16 operator in a 22-bit immediate context may have the incorrect relocation.

      ELF-only $HI16 assembler relocation operator handled incorrectly, affecting _symval intrinsic

            syncuser TI User
            syncuser TI User
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: