llvm-6502/test
Hal Finkel 0a3368cde5 [TableGen] Correctly generate implicit anonymous prototype defs in multiclasses
Even within a multiclass, we had been generating concrete implicit anonymous
defs when parsing values (generally in value lists). This behavior was
incorrect, and led to errors when multiclass parameters were used in the
parameter list of the implicit anonymous def.

If we had some multiclass:

multiclass mc<string n> {

 ... : SomeClass<SomeOtherClass<n> >

The capture of the multiclass parameter 'n' would not work correctly, and
depending on how the implicit SomeOtherClass was used, either TableGen would
ignore something it shouldn't, or would crash.

To fix this problem, when inside a multiclass, we generate prototype anonymous
defs for implicit anonymous defs (just as we do for explicit anonymous defs).
Within the multiclass, the current record prototype is populated with a node
that is essentially: !cast<SomeOtherClass>(!strconcat(NAME, anon_value_name)).
This is then resolved to the correct concrete anonymous def, in the usual way,
when NAME is resolved during multiclass instantiation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198348 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-02 20:47:09 +00:00
..
Analysis BasicAA: Fix value equality and phi cycles 2014-01-02 03:31:36 +00:00
Assembler Fold vector selects with undef elements in the condition. Fixes PR18319. 2013-12-31 19:30:47 +00:00
Bindings Update the ML test to expect the new string format of getStringRepresentation. 2013-12-19 23:38:09 +00:00
Bitcode Fold vector selects with undef elements in the condition. Fixes PR18319. 2013-12-31 19:30:47 +00:00
BugPoint
CodeGen Make the ARM ABI selectable via SubtargetFeature. 2014-01-02 13:40:08 +00:00
DebugInfo Revert "Debug info: Add enumerators to the __apple_names accelerator table." 2014-01-02 18:48:24 +00:00
ExecutionEngine
Feature
FileCheck
Instrumentation [ASan] Fix the tests broken by r198018 to check for private linkage of ASan-generated globals. 2013-12-25 17:06:04 +00:00
Integer
JitListener
Linker
LTO
MC [arm] Add softvfp to supported FPU names. 2014-01-02 15:50:02 +00:00
Object
Other
TableGen [TableGen] Correctly generate implicit anonymous prototype defs in multiclasses 2014-01-02 20:47:09 +00:00
tools Teach the llvm-readobj COFF dumper to dump debug line tables from object files 2013-12-19 11:37:14 +00:00
Transforms Delete unread globals through addrspacecast 2014-01-02 20:01:43 +00:00
Unit
Verifier Begin adding docs and IR-level support for the inalloca attribute 2013-12-19 02:14:12 +00:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg
lit.site.cfg.in [CMake] Add missing set_output_directory after Takumi's change in r198205. 2014-01-02 19:47:45 +00:00
Makefile
Makefile.tests
TestRunner.sh