Issue 83197
Summary Merge 860b6edfa9b344fbf8c500c17158c8212ea87d1c into 18.x
Labels new issue
Assignees
Reporter brad0
    MIPS: fix emitDirectiveCpsetup on N32 (#80534)

In gas, .cpsetup may expand to one of two code sequences (one is related to `__gnu_local_gp`), depending on -mno-shared and -msym32.
Since Clang doesn't support -mno-shared or -msym32, .cpsetup expands to one code sequence.
The N32 condition incorrectly leads to the incorrect `__gnu_local_gp` code sequence.

```
00000000 <t1>:
 0:   ffbc0008        sd      gp,8(sp)
   4:   3c1c0000        lui gp,0x0
                        4: R_MIPS_HI16  __gnu_local_gp
   8: 279c0000        addiu   gp,gp,0
                        8: R_MIPS_LO16 __gnu_local_gp
```

Fixes: #52785
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to