Commit Graph

162 Commits

Author SHA1 Message Date
Peter Collingbourne
7c78888887 Move TableGen's parser and entry point into a library
This is the first step towards splitting LLVM and Clang's tblgen executables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140951 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-01 16:41:13 +00:00
Bruno Cardoso Lopes
dca6cdd6a1 Added the infrastructute necessary for MIPS JIT support. Patch by Vladimir
Stefanovic. I removed the part that actually emits the instructions cause
I want that to get in better shape first and in incremental steps. This
also makes it easier to review the upcoming parts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135678 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-21 16:28:51 +00:00
Oscar Fuentes
2341a3c331 Fix CMake build on Solaris
When building LLVM/Clang on Solaris. The generated makefiles would
have an extraneous semi-colon character in them prior to this change
due to the way the 'CMAKE_CXX_FLAGS' variable was defined. Simply
adjusting the definition by moving the current CMAKE_CXX_FLAGS value
within the quotes solves the problem.

Patch by Art Haas!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135361 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-17 17:35:15 +00:00
Nick Lewycky
bcffb1fbb8 Rename profile_rt.so to libprofile_rt.so under configure+make (it already was
under cmake).

Add libprofile_rt.a so that we can tell clang to link against it in --coverage
mode. Also turn it on by default in cmake builds.

Oscar, this touches a change you made for EXCLUDE_FROM_ALL support -- I think
I've done the right thing, but please let me know (or fix and commit) if not!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130470 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-29 02:12:06 +00:00
Nick Lewycky
e88c724ff0 Add cmakefiles to build profile_rt.so!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130191 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-26 05:48:41 +00:00
Chris Lattner
7a2bdde0a0 Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-15 05:18:47 +00:00
Oscar Fuentes
db3480c432 Supports building with a list of targets that does not contain
X86. Fixes PR9533.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128154 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-23 17:42:13 +00:00
Oscar Fuentes
89234e1e28 Removed workaround for unspecified build problem on MinGW.
Tested that MinGW/MSYS builds fine without that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128033 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-21 22:53:51 +00:00
Bill Wendling
ebc2fc1e2c Change the next release number to 3.0svn.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127213 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-08 03:00:02 +00:00
Oscar Fuentes
d9f574b724 Cmake fix for option defaults not being set correctly on first run
On the first cmake run before the caches has been updated with the
default options, options defined after HandleLLVMOptions are always
treated as off inside HandleLLVMOptions.

Patch by Erik Olofsson!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126790 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-01 22:31:19 +00:00
Oscar Fuentes
f67cf018ab Install include/llvm/Support/LICENSE.TXT. PR9321.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126571 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-27 13:32:50 +00:00
NAKAMURA Takumi
afcf6ac7a8 CMake: Define LLVM_INCLUDE_TESTS in cmake/modules/HandleLLVMOptions.cmake. It affects testing stuff on clang-standalone build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126107 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-21 03:21:06 +00:00
Oscar Fuentes
0b85d07d46 Put targets on folders, if the IDE supports the feature.
Requires CMake 2.8.3 or newer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126092 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-20 22:06:10 +00:00
Oscar Fuentes
6d857ca4d7 Move library stuff out of the toplevel CMakeLists.txt file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125968 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-18 22:06:14 +00:00
Oscar Fuentes
742c0dd8fd New library: LLVMX86Utils.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125786 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-17 22:26:11 +00:00
Oscar Fuentes
c08830d46d Add current binary and source directories to the header search list
for all compiler invocations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125513 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-14 20:13:58 +00:00
Oscar Fuentes
5a858e3416 Moved more stuff to HandleLLVMOptions.cmake
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124968 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-05 19:08:42 +00:00
Oscar Fuentes
d931dca6e5 Moved to Clang's source tree its configuration options and associated
macros.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124824 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-03 22:47:59 +00:00
Oscar Fuentes
d538e24922 Changes for building Clang and others using LLVM as an external
library.

Installs tblgen (required by Clang).

Translates handling of user settings and platform-dependant options to
its own file, where it can included by another project.

Installs the .cmake files required by projects like Clang.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124816 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-03 20:57:36 +00:00
Oscar Fuentes
5969379145 Handles libffi on the CMake build.
Patch by arrowdodger!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123976 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-21 15:42:54 +00:00
Francois Pichet
119266c4ae Suppress warning "switch statement contains 'default' but no 'case' labels" on MSVC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123610 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-17 02:07:17 +00:00
Oscar Fuentes
19823b19ba Add to the CMake build some options and platform tests supported by
the traditional build.

Patch by arrowdodger!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123233 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-11 12:31:54 +00:00
Oscar Fuentes
6abea2b0a4 Apply -fPIC to C sources too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123122 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-09 17:38:31 +00:00
Oscar Fuentes
2c5e0b8b98 Rewrite handling of LLVM_ENABLE_PIC. It was being processed after
config.h was generated, so it had no effect on it.

Thanks to arrowdodger for pointing out this and a tentative patch.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123119 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-09 14:34:39 +00:00
Oscar Fuentes
53bf3ee82b Don't use -O3 on Mingw, as people report it as unreliable. Use -O2
instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123028 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-07 20:31:03 +00:00
Oscar Fuentes
784a176bc3 New cmake option LLVM_APPEND_VC_REV for controlling when the VC
revision id is appended to the LLVM version string. Defaults to
OFF.

Until now the VC revision id was always appended to the revision
string whenever cmake was invoked (either explicitly or implicitly
because a cmake source file changed). This was causing massive
recompilations because config.h are reconfigured with the new contents
of PACKAGE_VERSION.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122240 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-20 09:47:13 +00:00
Michael J. Spencer
57e9104318 CMake: Cleanup and document MSVC warning flags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122115 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-18 00:18:58 +00:00
Michael J. Spencer
014e189069 CMake: Add FileUpdate to the build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121386 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-09 17:54:44 +00:00
Francois Pichet
97b2f72765 Promote "enumerator in switch of enum is not handled" to level 1 warning on MSVC. It was disabled by default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121096 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-07 01:25:06 +00:00
Francois Pichet
b361452ef9 Disable C++ exception handling on MSVC.
Total size of bin\Release on disk goes from 82.9 MB to 74.2 MB. (~10% saving)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120908 91177308-0d34-0410-b5e6-96231b3b80d8
2010-12-04 14:30:22 +00:00
Michael J. Spencer
1f6efa3996 Merge System into Support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-29 18:16:10 +00:00
NAKAMURA Takumi
d420e7b76c CMake: lit(check.vcproj) can run with multiple configurations on Visual Studio.
Unittests need LLVM_BUILD_MODE to pick up each test.

Confirmed on CentOS5, Mingw, MSYS, and with possible configurations on VS8 and VS10.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120212 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-27 13:10:11 +00:00
Francois Pichet
0b8f0a208e Disable warning C4291 on MSVC. Caused because class AttributeList provides a non implemented operator delete without a corresponding new.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119902 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-20 15:39:03 +00:00
NAKAMURA Takumi
4c8710d917 CMakeLists.txt: On MSVS10, touch LLVM.sln as workaround, w/e project files are changed, to avoid the Dialog Hell. Thanks to Oscar.
FIXME: This could be removed with future version of CMake.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119780 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-19 03:19:18 +00:00
Wesley Peck
b977f04c5b Make MCJIT work with CMake.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119589 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17 23:35:07 +00:00
Michael J. Spencer
68b3f0c40e Add LLVMObject Library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119107 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-15 03:21:41 +00:00
Oscar Fuentes
db2c50907f Detect presence of AsmPrinter's. Remove some cruft too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119077 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 21:17:13 +00:00
Chris Lattner
01928b9a40 hopefully unbreak the cmake build, patch by frits van bommel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119069 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 20:51:15 +00:00
Oscar Fuentes
14b0c056e6 CMakeLists.txt: removed mismatched endif predicate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119064 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 20:15:05 +00:00
Chris Lattner
aeafb894fa hopefully fix cmake as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119058 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 19:12:57 +00:00
Chris Lattner
1139691e3a move all the target's asmprinters into the main target. The piece
that should be split out is the InstPrinter (if a target is mc'ized).
This change makes all the targets be consistent.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119056 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 18:43:56 +00:00
NAKAMURA Takumi
e7ae70b137 CMake: Add the new option "LLVM_LIT_ARGS".
Defaults:
if (MSVC OR XCODE): "-sv --no-progress-bar"
else: "-sv"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118776 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-11 04:09:35 +00:00
NAKAMURA Takumi
15b337c28d CMake: Build utils/KillTheDoctor only on MSVC for now.
Mingw does not have the header <dbghelp.h>.
Thanks to Daniel Newton, testing it on mingw.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117352 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-26 05:08:27 +00:00
Chandler Carruth
6b241160ed First step to allowing the resource directory of Clang to be adjusted for
strange packaging environments. The primary result of this is to expose
a (normally empty) CLANG_RESOURCE_DIR string in the autoconf and CMake builds.
This will in turn be used by a subsequent commit to Clang.

Regenerated configure and config.h.in thanks to Nick. =D


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116802 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-19 08:21:25 +00:00
Oscar Fuentes
4d156d3a25 Added basic support for CPack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116516 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-14 21:11:51 +00:00
Francois Pichet
b2b9b768ef Disable warning C4267 for MSVC. Otherwise it generate literally thousands of warnings when targeting x64. The warning occurs because int is 32 bit but size_t is 64 bit on Win64.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116274 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-12 00:01:36 +00:00
Michael J. Spencer
bbb9ea7b70 Add KillTheDoctor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116216 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-11 19:55:38 +00:00
Chris Lattner
60cb528246 Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if
it comes back, it will be largely a rewrite, so keeping the old codebase
in tree isn't helping anyone.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116190 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-11 05:44:40 +00:00
Oscar Fuentes
bab2b012d6 Handle InstPrinter's on the CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115402 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02 02:38:42 +00:00
Nick Lewycky
c57707dd87 Revert patches r115363 r115367 r115391 due to build breakage:
llvm[2]: Updated LibDeps.txt because dependencies changed
llvm[2]: Checking for cyclic dependencies between LLVM libraries.
find-cycles.pl: Circular dependency between *.a files:
find-cycles.pl:   libLLVMMSP430AsmPrinter.a libLLVMMSP430CodeGen.a



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115393 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-02 01:06:42 +00:00