llvm-project/llvm/test
Matt Arsenault c765240060 AMDGPU/GlobalISel: Introduce vcc reg bank
I'm not entirely sure this is the correct thing
to do with the global isel philosophy, but I think
this is necessary to handle how differently SGPRs
are used normally vs. from a condition.

For example, it makes sense to allow a copy
from a VGPR to an SGPR, but it makes no sense
to allow a copy from VGPRs to SGPRs used as
select mask.

This avoids regbankselecting strange code with
a truncate feeding directly into a condition field.
Now a copy is forced from sgpr(s1) to vcc, which is
more sensible to handle.

Some of these issues could probably avoided with making enough
operations resulting in i1 illegal. I think we can't avoid
this register bank for legality.

For example, an i1 and where one source is from a truncate, and
one source is a compare needs some kind of copy inserted to
make sure both are in condition registers.

llvm-svn: 350611
2019-01-08 06:30:53 +00:00
..
Analysis [ValueTracking] Adjust comment in test 2019-01-07 21:02:22 +00:00
Assembler Revert patches 348835 and 348571 because they're 2019-01-04 16:39:10 +00:00
Bindings [DebugInfo] IR/Bitcode changes for DISubprogram flags. 2018-11-28 21:14:32 +00:00
Bitcode [ThinLTO] Compute synthetic function entry count 2018-12-13 19:54:27 +00:00
BugPoint Python compat - print statement 2019-01-03 14:11:33 +00:00
CodeGen AMDGPU/GlobalISel: Introduce vcc reg bank 2019-01-08 06:30:53 +00:00
DebugInfo [Verifier] Reject invalid type for DILocalVariable. 2019-01-07 23:09:09 +00:00
Demangle [MS Demangler] Fail gracefully on invalid pointer types. 2018-12-14 18:10:13 +00:00
Examples
ExecutionEngine Implement IMAGE_REL_AMD64_SECREL for RuntimeDyldCOFFX86_64 2018-12-12 00:04:06 +00:00
Feature
FileCheck [FileCheck] Try to fix test on windows due to r349418 2018-12-18 01:17:28 +00:00
Instrumentation Revert "Revert "[hwasan] Android: Switch from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)"" 2019-01-05 00:44:58 +00:00
Integer
JitListener
LTO [ThinLTO] Remove dllimport attribute from locally defined symbols 2018-12-19 19:07:45 +00:00
Linker Implement -frecord-command-line (-frecord-gcc-switches) 2018-12-14 15:38:15 +00:00
MC [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
Object [llvm-readobj] [COFF] Print the symbol index for relocations 2019-01-03 08:08:23 +00:00
ObjectYAML [WebAssembly] Massive instruction renaming 2019-01-08 06:25:55 +00:00
Other Python compat - print statement 2019-01-03 14:11:33 +00:00
SafepointIRVerifier
SymbolRewriter
TableGen [tblgen][disasm] Emit record names again when decoder conflicts occur. 2019-01-03 00:14:33 +00:00
ThinLTO/X86 [ThinLTO] Scan all variants of vague symbol for reachability. 2019-01-02 23:18:20 +00:00
Transforms fix comment typo - NFC 2019-01-08 00:40:01 +00:00
Unit [test] Fix propagating HOME envvar to unittests 2018-12-31 13:48:12 +00:00
Verifier [Verifier] Reject invalid type for DILocalVariable. 2019-01-07 23:09:09 +00:00
YAMLParser
tools [dsymutil] Upstream unobfuscation logic. 2019-01-07 23:27:25 +00:00
.clang-format
CMakeLists.txt [elfabi] Introduce tool for ELF TextAPI 2019-01-03 18:32:36 +00:00
TestRunner.sh
lit.cfg.py Remove unused %host_cc lit pattern 2019-01-03 19:31:53 +00:00
lit.site.cfg.py.in