Commit Graph

3817 Commits

Author SHA1 Message Date
Daniel Dunbar
b7f3bfc559 llvm-build: Add --configure-target-def-file option.
- Can be used to generate the substitution values we currently use for the various target related .def files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144345 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11 00:24:00 +00:00
Daniel Dunbar
5ed5506f18 LLVMBuild: Add explicit information on whether targets define an assembly printer, assembly parser, or disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144344 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-11 00:23:56 +00:00
Daniel Dunbar
8333730259 build/Make & CMake: Pass the appropriate --native-target and --enable-targets
options to llvm-build, so the all-targets etc. components are defined properly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144255 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 01:16:48 +00:00
Daniel Dunbar
affc6cf9d2 llvm-build: Add --native-target and --enable-targets options, and add logic to
handle defining the "magic" target related components (like native,
nativecodegen, and engine).
 - We still require these components to be in the project (currently in
   lib/Target) so that we have a place to document them and hopefully make it
   more obvious that they are "magic".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144253 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 00:50:07 +00:00
Daniel Dunbar
b4eaee7a44 llvm-build: Split out the validation logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144252 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 00:49:58 +00:00
Daniel Dunbar
c352caf168 llvm-build: Add an explicit component type to represent targets.
- Gives us a place to hang target specific metadata (like whether the target has a JIT).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144250 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 00:49:51 +00:00
Daniel Dunbar
1e5b24330b llvm-build: Tidy up options.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144249 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 00:49:42 +00:00
Owen Anderson
1ad1246bbc Remove this from the CMake build since I erased the file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144245 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-10 00:07:22 +00:00
Owen Anderson
a25e292d5f Remove the old-style ARM disassembler, which is no longer used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144243 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-09 23:56:06 +00:00
Craig Topper
c8eb880a7f More AVX2 instructions and their intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143895 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-06 23:04:08 +00:00
Daniel Dunbar
195c6f3663 utils/llvm-build: Ensure output directory exists for tools which write various fragments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143782 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-05 04:07:49 +00:00
Daniel Dunbar
57574fa35e utils/llvm-build: Add trivial quoting of slashes for CMake fragment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143781 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-05 04:07:43 +00:00
Daniel Dunbar
20fb32b392 llvm-build: Quote colons in target names, in an attempt to make msys happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143745 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-04 23:40:11 +00:00
Daniel Dunbar
1688961d4e llvm-build: Add initial --write-cmake-fragment option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143744 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-04 23:10:37 +00:00
Bob Wilson
fb067ed485 Build llvmCore with RTTI enabled. <rdar://problem/10395761>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143714 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-04 17:57:13 +00:00
Daniel Dunbar
903aa8d00f utils: Rename the "llvmbuild" script to llvm-compilers-check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143673 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-04 01:09:02 +00:00
Daniel Dunbar
02271a7b42 llvm-build: Add initial code for --write-make-fragment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143661 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 22:46:19 +00:00
Daniel Dunbar
89b6f2ea9f utils: Remove (way) old nightly test scripts, I don't think anyone uses them and LNT has way better tools than this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143655 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 21:03:53 +00:00
Daniel Dunbar
e10233b668 llvm-build: Avoid followlinks keyword argument to os.walk.
- llvm-build should now be Python2.4 compatible as best I know.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143641 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 19:45:52 +00:00
Daniel Dunbar
a3a2dfd4a2 build: Add initial cut at LLVMBuild.txt files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143634 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 18:53:17 +00:00
Daniel Dunbar
fb6d79a58e llvm-build: Update --write-llvmbuild to write out a standard LLVM style file
header.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143629 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:31 +00:00
Daniel Dunbar
efe2f644ec llvm-build: Add "--write-library-table" option for generating the C++ library
dependency table used by llvm-config.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143628 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:28 +00:00
Daniel Dunbar
43120df44b llvm-build: Add --write-llvmbuild option, which writes out the component tree.
- Useful for migrating or auto-upgrading the format schema.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143626 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:21 +00:00
Daniel Dunbar
00b4b4f5cb llvm-build: Add --print-tree command line option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143625 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:18 +00:00
Daniel Dunbar
86c119a507 llvm-build: Fill in some details w.r.t. component's parents.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143624 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:16 +00:00
Daniel Dunbar
1cf14aff1b llvm-build: Validate information on the loaded components and form the topological ordering among them (as well as validating that there are no cycles).
- Currently we require that all references between components (except the parent relation) fit into a DAG -- this could be relaxed later if it ever proves to be useful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143623 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:12 +00:00
Daniel Dunbar
9da6b12441 llvm-build: Fill in more of component parsing to be more strict and
differentiate between strings and lists.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143622 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:10 +00:00
Daniel Dunbar
df578254a1 llvm-build: Sketch code to load LLVMBuild.txt files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143621 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:06 +00:00
Daniel Dunbar
ad5e0122c1 build: Stub out llvm-build utility tool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143620 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-03 17:56:03 +00:00
Chandler Carruth
1bfc9f8ff2 The TableGen parts of the CMake build are seriously broken. This fixes
one aspect of them by having them use the (annoying, if not broken)
proper library dependency model for adding the LLVMTableGen library as
a dependency. This could manifest as a link order issue in the presence
of separate LLVM / Clang source builds with CMake and a linker that
really cares about such things.

Also, add the Support dependency to llvm-tblgen itself so that it
doesn't rely on TableGen's transitive Support dependency. A parallel
change for clang-tblgen will be forthcoming.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143531 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-02 05:03:06 +00:00
Chad Rosier
3eae0c2fa6 Rename show-diagnostics to something less ambiguous.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143525 91177308-0d34-0410-b5e6-96231b3b80d8
2011-11-02 00:44:16 +00:00
Bill Wendling
ac6d7e4911 Do a relative path ln command instead of an absolute path one. Some people strangely enough have different directory layouts...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143302 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-29 23:49:52 +00:00
Jim Grosbach
48c1f84b10 Allow InstAlias's to use immediate matcher patterns that xform the value.
For example,

On ARM, "mov r3, #-3" is an alias for "mvn r3, #2", so we want to use a
matcher pattern that handles the bitwise negation when mapping to t2MVNi.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143233 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-28 22:32:53 +00:00
Jim Grosbach
be5d6bcfc6 Allow register classes to match a containing class in InstAliases.
If the register class in the source alias is a subclass of the register class
of the actual instruction, the alias can still match OK since the constraints
are strictly a subset of what the instruction can actually handle.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143200 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-28 16:43:40 +00:00
Dan Gohman
33ba8b0e96 Remove the Alpha backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143164 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-27 22:56:32 +00:00
Jim Grosbach
e39102819e Delete dead code. Nothing ever instantiates this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143153 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-27 21:59:17 +00:00
Daniel Dunbar
241f997d3a lit: Drop some unneeded code from example tests.
- Also, cleanup site.exp files in example tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143141 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-27 20:59:19 +00:00
Dan Gohman
3e6157de57 Remove the Blackfin backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142880 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-25 00:05:42 +00:00
Dan Gohman
29074ccf6c Remove the SystemZ backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142878 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-24 23:48:32 +00:00
Chad Rosier
7f53d592ff Add options to enable each individual level for the show-diagnostics tool.
rdar://9683410

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142856 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-24 21:56:50 +00:00
Bill Wendling
65ec521c3c Rename the script to indicate that this is for the TEST=simple tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142764 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-23 20:14:06 +00:00
Bill Wendling
aec4011947 Resurrect the 'find regressions for the TEST=nightly tests' script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142763 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-23 20:13:14 +00:00
Craig Topper
75485d6746 Add X86 RORX instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142741 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-23 07:34:00 +00:00
Benjamin Kramer
1a2f9886a2 Move various generated tables into read-only memory, fixing up const correctness along the way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142726 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-22 16:50:00 +00:00
Jim Grosbach
4661d4cac3 Assembly parsing for 2-register sequential variant of VLD2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142691 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 22:21:10 +00:00
Jim Grosbach
b6310316db Assembly parsing for 4-register variant of VLD1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142682 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 20:35:01 +00:00
Jim Grosbach
cdcfa28056 Assembly parsing for 3-register variant of VLD1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142675 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 20:02:19 +00:00
Jim Grosbach
280dfad489 ARM VLD parsing and encoding.
Next step in the ongoing saga of NEON load/store assmebly parsing. Handle
VLD1 instructions that take a two-register register list.

Adjust the instruction definitions to only have the single encoded register
as an operand. The super-register from the pseudo is kept as an implicit def,
so passes which come after pseudo-expansion still know that the instruction
defines the other subregs.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142670 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 18:54:25 +00:00
Duncan Sands
58fba239e4 Ensure timestamps are not embedded into files when doing a release build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142647 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 09:47:14 +00:00
Bill Wendling
b9ad624fcd Modify the script to output the regressions and passes into categories. My Python-fu could use some improving...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142643 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-21 06:58:01 +00:00