llvm/test
Simon Dardis 2468c7d5ea [mips] Fix atomic compare and swap at O0.
Similar to PR/25526, fast-regalloc introduces spills at the end of basic
blocks. When this occurs in between an ll and sc, the store can cause the
atomic sequence to fail.

This patch fixes the issue by introducing more pseudos to represent atomic
operations and moving their lowering to after the expansion of postRA
pseudos.

This resolves PR/32020.

Thanks to James Cowgill for reporting the issue!

Reviewers: slthakur

Differential Revision: https://reviews.llvm.org/D30257



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@296132 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-24 16:27:45 +00:00
..
Analysis [ValueTracking] Make poison propagation more aggressive 2017-02-22 06:52:32 +00:00
Assembler Move inline asm diags tests to an ARM directory. 2017-02-08 16:48:35 +00:00
Bindings
Bitcode IR: Function summary extensions for whole-program devirtualization pass. 2017-02-10 22:29:38 +00:00
BugPoint [IR/Verifier] List the CU we weren't able to find in llvm.dbg.cu. 2017-02-20 22:51:42 +00:00
CodeGen [mips] Fix atomic compare and swap at O0. 2017-02-24 16:27:45 +00:00
DebugInfo [IR/Verifier] Don't visit DISubprograms more than needed. 2017-02-18 03:02:44 +00:00
Examples
ExecutionEngine RuntimeDyldELF/AArch64: Implement basic GOT support 2017-02-06 15:31:28 +00:00
Feature Add intrinsics for constrained floating point operations 2017-01-26 23:27:59 +00:00
FileCheck
Instrumentation [msan] Fix instrumentation of array allocas. 2017-02-24 00:13:17 +00:00
Integer
JitListener
LibDriver
Linker Verifier: Disallow a line number without a file in DISubprogram 2017-02-17 23:57:42 +00:00
LTO Implement intrinsic mangling for literal struct types. 2017-02-15 23:16:20 +00:00
MC [mips] Handle 64 bit immediate in and/or/xor pseudo instructions on mips64 2017-02-24 14:34:32 +00:00
Object Write to a temporary file in test instead of random file in the test directory. 2017-02-22 09:02:27 +00:00
ObjectYAML Attempt to fix the testcase in r292824 2017-01-23 20:42:17 +00:00
Other s/REQUIRES: Asserts/REQUIRES: asserts/ 2017-02-19 23:26:00 +00:00
SymbolRewriter
TableGen [globalisel] Decouple src pattern operands from dst pattern operands. 2017-02-24 15:43:30 +00:00
ThinLTO/X86 Verifier: Disallow a line number without a file in DISubprogram 2017-02-17 23:57:42 +00:00
tools [mips][mc] Fix a crash when disassembling odd sized sections 2017-02-24 12:47:41 +00:00
Transforms [Fuchsia] Use thread-pointer ABI slots for stack-protector and safe-stack 2017-02-24 03:10:10 +00:00
Unit
Verifier Revert "Teach the IR verifier to reject conflicting debug info for function arguments." 2017-02-23 19:13:48 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
TestRunner.sh