1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test
James Y Knight 2d0c86cc0b Support expanding partial-word cmpxchg to full-word cmpxchg in AtomicExpandPass.
Many CPUs only have the ability to do a 4-byte cmpxchg (or ll/sc), not 1
or 2-byte. For those, you need to mask and shift the 1 or 2 byte values
appropriately to use the 4-byte instruction.

This change adds support for cmpxchg-based instruction sets (only SPARC,
in LLVM). The support can be extended for LL/SC-based PPC and MIPS in
the future, supplanting the ISel expansions those architectures
currently use.

Tests added for the IR transform and SPARCv9.

Differential Revision: http://reviews.llvm.org/D21029

llvm-svn: 273025
2016-06-17 18:11:48 +00:00
..
Analysis [CFLAA] Tag arguments as escaped instead of unknown. 2016-06-14 18:12:28 +00:00
Assembler IR: Introduce local_unnamed_addr attribute. 2016-06-14 21:01:22 +00:00
Bindings Add support for callsite in the new C API for attributes 2016-06-15 05:14:29 +00:00
Bitcode IR: Introduce local_unnamed_addr attribute. 2016-06-14 21:01:22 +00:00
BugPoint
CodeGen Support expanding partial-word cmpxchg to full-word cmpxchg in AtomicExpandPass. 2016-06-17 18:11:48 +00:00
DebugInfo [CodeView] Refactor enumerator emission 2016-06-17 16:13:21 +00:00
Examples
ExecutionEngine Change the default of -relax-relocations. 2016-06-17 17:04:56 +00:00
Feature IR: Introduce local_unnamed_addr attribute. 2016-06-14 21:01:22 +00:00
FileCheck Make check lines not match themselves. 2016-06-16 19:38:48 +00:00
Instrumentation [esan|cfrag] Add the struct field size array in StructInfo 2016-06-17 04:50:20 +00:00
Integer
JitListener
LibDriver
Linker
LTO IR: Introduce local_unnamed_addr attribute. 2016-06-14 21:01:22 +00:00
MC Change the default of -relax-relocations. 2016-06-17 17:04:56 +00:00
Object Remove redundant -mattr options from llvm-objdump commands. 2016-06-16 15:47:19 +00:00
ObjectYAML
Other Statistic: Add machine parseable json output 2016-06-15 20:19:16 +00:00
SymbolRewriter
TableGen
ThinLTO/X86
tools Fix llvm-objdump when disassembling a stripped Mach-O binary with the -macho option. 2016-06-15 21:14:01 +00:00
Transforms Support expanding partial-word cmpxchg to full-word cmpxchg in AtomicExpandPass. 2016-06-17 18:11:48 +00:00
Unit
Verifier Verifier: check that functions have at most a single !prof attachment. 2016-06-14 23:13:15 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in
TestRunner.sh