mirror of
https://git.proxmox.com/git/llvm-toolchain
synced 2025-07-09 08:23:25 +00:00
mips-rdhwr.diff: backport D51773 to fix an assembly issue on mips. Thanks to jrtc27 for finding the issue
This commit is contained in:
parent
755623734b
commit
9673e1502c
4
debian/changelog
vendored
4
debian/changelog
vendored
@ -3,7 +3,9 @@ llvm-toolchain-7 (1:7-7~exp3) experimental; urgency=medium
|
|||||||
* Remove the dump of cmake error file (too confusing)
|
* Remove the dump of cmake error file (too confusing)
|
||||||
* Try to fix the bootstrap FTBFS :
|
* Try to fix the bootstrap FTBFS :
|
||||||
- on armel by forcing the link to -latomic
|
- on armel by forcing the link to -latomic
|
||||||
|
- mips-rdhwr.diff: backport D51773 to fix an
|
||||||
|
assembly issue on mips.
|
||||||
|
Thanks to jrtc27 for finding the issue
|
||||||
|
|
||||||
-- Sylvestre Ledru <sylvestre@debian.org> Tue, 23 Oct 2018 08:21:03 +0200
|
-- Sylvestre Ledru <sylvestre@debian.org> Tue, 23 Oct 2018 08:21:03 +0200
|
||||||
|
|
||||||
|
50
debian/patches/mips-rdhwr.diff
vendored
Normal file
50
debian/patches/mips-rdhwr.diff
vendored
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
Index: llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
|
||||||
|
===================================================================
|
||||||
|
--- llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
|
||||||
|
+++ llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
|
||||||
|
@@ -1139,3 +1139,6 @@
|
||||||
|
"sltu\t$rs, $rt, $imm">, GPR_64;
|
||||||
|
def : MipsInstAlias<"sltu\t$rs, $imm", (SLTUImm64 GPR64Opnd:$rs, GPR64Opnd:$rs,
|
||||||
|
imm64:$imm)>, GPR_64;
|
||||||
|
+
|
||||||
|
+def : MipsInstAlias<"rdhwr $rt, $rs",
|
||||||
|
+ (RDHWR64 GPR64Opnd:$rt, HWRegsOpnd:$rs, 0), 1>, GPR_64;
|
||||||
|
Index: llvm/trunk/test/CodeGen/Mips/tls.ll
|
||||||
|
===================================================================
|
||||||
|
--- llvm/trunk/test/CodeGen/Mips/tls.ll
|
||||||
|
+++ llvm/trunk/test/CodeGen/Mips/tls.ll
|
||||||
|
@@ -48,14 +48,14 @@
|
||||||
|
; STATIC32-LABEL: f1:
|
||||||
|
; STATIC32: lui $[[R0:[0-9]+]], %tprel_hi(t1)
|
||||||
|
; STATIC32: addiu $[[R1:[0-9]+]], $[[R0]], %tprel_lo(t1)
|
||||||
|
-; STATIC32: rdhwr $3, $29
|
||||||
|
+; STATIC32: rdhwr $3, $29{{$}}
|
||||||
|
; STATIC32: addu $[[R2:[0-9]+]], $3, $[[R1]]
|
||||||
|
; STATIC32: lw $2, 0($[[R2]])
|
||||||
|
|
||||||
|
; STATIC64-LABEL: f1:
|
||||||
|
; STATIC64: lui $[[R0:[0-9]+]], %tprel_hi(t1)
|
||||||
|
; STATIC64: daddiu $[[R1:[0-9]+]], $[[R0]], %tprel_lo(t1)
|
||||||
|
-; STATIC64: rdhwr $3, $29, 0
|
||||||
|
+; STATIC64: rdhwr $3, $29{{$}}
|
||||||
|
; STATIC64: daddu $[[R2:[0-9]+]], $3, $[[R0]]
|
||||||
|
; STATIC64: lw $2, 0($[[R2]])
|
||||||
|
}
|
||||||
|
@@ -101,15 +101,15 @@
|
||||||
|
; STATIC32-LABEL: f2:
|
||||||
|
; STATIC32: lui $[[R0:[0-9]+]], %hi(__gnu_local_gp)
|
||||||
|
; STATIC32: addiu $[[GP:[0-9]+]], $[[R0]], %lo(__gnu_local_gp)
|
||||||
|
-; STATIC32: rdhwr $3, $29
|
||||||
|
+; STATIC32: rdhwr $3, $29{{$}}
|
||||||
|
; STATIC32: lw $[[R0:[0-9]+]], %gottprel(t2)($[[GP]])
|
||||||
|
; STATIC32: addu $[[R1:[0-9]+]], $3, $[[R0]]
|
||||||
|
; STATIC32: lw $2, 0($[[R1]])
|
||||||
|
|
||||||
|
; STATIC64-LABEL: f2:
|
||||||
|
; STATIC64: lui $[[R0:[0-9]+]], %hi(%neg(%gp_rel(f2)))
|
||||||
|
; STATIC64: daddiu $[[GP:[0-9]+]], $[[R0]], %lo(%neg(%gp_rel(f2)))
|
||||||
|
-; STATIC64: rdhwr $3, $29
|
||||||
|
+; STATIC64: rdhwr $3, $29{{$}}
|
||||||
|
; STATIC64: ld $[[R0:[0-9]+]], %gottprel(t2)($[[GP]])
|
||||||
|
; STATIC64: daddu $[[R1:[0-9]+]], $3, $[[R0]]
|
||||||
|
; STATIC64: lw $2, 0($[[R1]])
|
2
debian/patches/series
vendored
2
debian/patches/series
vendored
@ -84,4 +84,4 @@ hurd-tools_llvm-shlib_CMakeLists.txt.diff
|
|||||||
clangd-atomic-cmake.patch
|
clangd-atomic-cmake.patch
|
||||||
rustc-aarch64-test-failure.diff
|
rustc-aarch64-test-failure.diff
|
||||||
symbolizer-path.diff
|
symbolizer-path.diff
|
||||||
|
mips-rdhwr.diff
|
||||||
|
Loading…
Reference in New Issue
Block a user