Matt Beaumont-Gay
ee6231ce6b
Revert accidental change to LLVMLibDeps.cmake
...
llvm-svn: 128499
2011-03-29 22:42:41 +00:00
Matt Beaumont-Gay
bceec7f9a8
Quiet a gcc warning about changed name lookup rules
...
llvm-svn: 128497
2011-03-29 22:25:36 +00:00
Oscar Fuentes
978e5284fa
Fixed the build of Clang's unit tests on MinGW. Also removed some
...
unnecesary conditionals and introduced a new convenience function.
The problem was that the list of libraries for Clang's unit tests was
<clang libraries> <system libraries> <llvm libraries>. As the llvm
libraries references symbols defined on the system libraries, those
were reported as undefined.
llvm-svn: 128484
2011-03-29 20:51:08 +00:00
Oscar Fuentes
465f93645f
Supports building with a list of targets that does not contain
...
X86. Fixes PR9533.
llvm-svn: 128154
2011-03-23 17:42:13 +00:00
Oscar Fuentes
27cfcbac82
Updated library dependencies.
...
Now we can remove RuntimeDyld from the LLVM_LINK_COMPONENTS of
tools/lli. CMakeLists.txt LLVM_LINK_COMPONENTS shall not differ from
its companion Makefile LINK_COMPONENTS.
llvm-svn: 128069
2011-03-22 03:58:55 +00:00
Oscar Fuentes
e4840e2918
Build the new RuntimeDyld library.
...
llvm-svn: 128035
2011-03-21 23:07:53 +00:00
Oscar Fuentes
623b5dae21
Removed workaround for unspecified build problem on MinGW.
...
Tested that MinGW/MSYS builds fine without that.
llvm-svn: 128033
2011-03-21 22:53:51 +00:00
Oscar Fuentes
877894a2fa
Update CMake library dependencies.
...
llvm-svn: 127956
2011-03-19 22:52:13 +00:00
Oscar Fuentes
638b8b783f
is_llvm_target_library: recognize libraries without the LLVM prefix.
...
Without this cmake fails at configuration when some target pass
"native" on LLVM_LINK_COMPONENTS and that is expanded to "X86".
llvm-svn: 127679
2011-03-15 14:53:53 +00:00
Oscar Fuentes
cc48b9ac0f
Whe we build a shared library, add its list of used libraries to the
...
link command.
Fixed a pair of IF expressions too.
llvm-svn: 127546
2011-03-12 16:48:54 +00:00
Oscar Fuentes
e503506048
Process some link components that map to other expandable components
...
before the main loop. This is necessary because the loop ignores the
items added to `link_components' after it is entered.
llvm-svn: 127333
2011-03-09 14:44:46 +00:00
Oscar Fuentes
a693632dfd
Remove remnant of my experimentation with CMake.
...
llvm-svn: 127244
2011-03-08 13:30:52 +00:00
Oscar Fuentes
318c3f1717
Support for parallel compilation (/MP) when using the VS IDE.
...
Patch by Erik Olofsson!
llvm-svn: 126847
2011-03-02 17:47:37 +00:00
Talin
de422beba4
Added missing va_end().
...
llvm-svn: 126759
2011-03-01 18:00:49 +00:00
Tobias Grosser
1b4f94070f
cmake: Add xdot.py support as it already exists in autoconf.
...
llvm-svn: 126563
2011-02-27 04:11:05 +00:00
Oscar Fuentes
2ece0b171f
Export TARGET_TRIPLE on LLVM.cmake. It is necessary for running tests
...
on Clang when it builds using LLVM as an external library.
Fixes PR9293.
llvm-svn: 126309
2011-02-23 11:28:40 +00:00
Oscar Fuentes
ab0465020b
CMake: remove unnecessary variable.
...
llvm-svn: 126224
2011-02-22 15:40:20 +00:00
NAKAMURA Takumi
66242b85f0
CMake: Define LLVM_INCLUDE_TESTS in cmake/modules/HandleLLVMOptions.cmake. It affects testing stuff on clang-standalone build.
...
llvm-svn: 126107
2011-02-21 03:21:06 +00:00
NAKAMURA Takumi
27b0b5a997
CMake: Fix breakage on clang standalone build.
...
llvm-svn: 126106
2011-02-21 03:20:57 +00:00
Oscar Fuentes
3145e923c1
Put targets on folders, if the IDE supports the feature.
...
Requires CMake 2.8.3 or newer.
llvm-svn: 126092
2011-02-20 22:06:10 +00:00
Oscar Fuentes
ba1186c23e
Use explicit add_subdirectory's for LLVM target sublibraries instead
...
of testing for its presence at cmake time.
This way the build automatically regenerates the makefiles when a svn
update brings in a new sublibrary.
llvm-svn: 126068
2011-02-20 02:55:27 +00:00
Jeffrey Yasskin
139412e169
Add the PARSE_ARGUMENTS CMake macro to LLVM so I can use it to clean
...
up add_clang_unittest's calling convention.
llvm-svn: 126031
2011-02-19 18:01:15 +00:00
Oscar Fuentes
5ed962656c
Move library stuff out of the toplevel CMakeLists.txt file.
...
llvm-svn: 125968
2011-02-18 22:06:14 +00:00
Oscar Fuentes
c9b7c4af5a
New library: LLVMX86Utils.
...
llvm-svn: 125786
2011-02-17 22:26:11 +00:00
NAKAMURA Takumi
860dc41218
CMake: LLVM_LIT_TOOLS_DIR is needed only on Win32 hosts to use GnuWin32 tools.
...
Unixen and Cygwin do not need it.
llvm-svn: 125277
2011-02-10 10:29:42 +00:00
NAKAMURA Takumi
5b4c155112
CMake: Add the new option LLVM_LIT_TOOLS_DIR. It can specify "Path to GnuWin32 tools".
...
llvm-svn: 125173
2011-02-09 04:18:58 +00:00
NAKAMURA Takumi
189111808e
lib/Support/Errno.cpp: Check strerror_s() with HAVE_DECL_STRERROR_S in config.h.*.
...
AC_CHECK_FUNCS seeks a symbol only in libs. We should check the declaration in string.h.
FIXME: I have never seen mingw(s) have strerror_s() (not _strerror_s()).
FIXME: Autoconf/CMake may seek strerror_s() with the definition MINGW_HAS_SECURE_API in future.
llvm-svn: 125172
2011-02-09 04:18:48 +00:00
Oscar Fuentes
0209aec4c6
Install only *.cmake files. Don't install .svn directory.
...
Fixes PR9159.
llvm-svn: 125001
2011-02-07 02:22:23 +00:00
Oscar Fuentes
7dc9dce770
Don't define NDEBUG on MSVC_IDE and XCode builds. Fixes PR9155.
...
llvm-svn: 124985
2011-02-06 19:07:06 +00:00
Oscar Fuentes
3522179e36
Moved more stuff to HandleLLVMOptions.cmake
...
llvm-svn: 124968
2011-02-05 19:08:42 +00:00
NAKAMURA Takumi
03a541f5c4
Windows/DynamicLibrary.inc: Split explicit symbols into explicit_symbols.inc.
...
config.h.* have conditions whether each symbol is defined or not.
Autoconf and CMake may check symbols in libgcc.a for JIT on Mingw.
llvm-svn: 124950
2011-02-05 15:11:53 +00:00
Oscar Fuentes
2761c7ab34
LLVM_ON_WIN32 is not defined on config-ix.cmake. Use something else.
...
llvm-svn: 124857
2011-02-04 05:40:04 +00:00
Oscar Fuentes
a6aa87898b
Add the tablegenned files to the `clean' target.
...
llvm-svn: 124854
2011-02-04 03:47:50 +00:00
Oscar Fuentes
f4202ba475
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.
llvm-svn: 124816
2011-02-03 20:57:36 +00:00
NAKAMURA Takumi
9795860250
cmake/*: Add svn:eol-style=native and fix CRLF.
...
llvm-svn: 124793
2011-02-03 11:41:27 +00:00
Oscar Fuentes
ed27eadd29
Platform tests for `sys/uio.h' header and `writev' function.
...
This is the cmake equivalent for r124769.
llvm-svn: 124775
2011-02-03 04:23:07 +00:00
Oscar Fuentes
e866c41f5c
Adds some platform checks to cmake/config-ix.cmake and fixes checking
...
for dlopen/dlerror.
Patch by arrowdodger!
llvm-svn: 124590
2011-01-31 18:25:25 +00:00
Oscar Fuentes
632ad9bfe6
Don't show -pedantic, -W and -Wall on the output of
...
llvm-config --cflags --cxxflags --cppflags
We shouldn't impose those flags on people who use llvm-config for
building their own projects.
llvm-svn: 124399
2011-01-27 19:29:48 +00:00
Oscar Fuentes
6495595382
Handles libffi on the CMake build.
...
Patch by arrowdodger!
llvm-svn: 123976
2011-01-21 15:42:54 +00:00
Oscar Fuentes
e65ed1c794
Add some platform checks. Also fix a typo on a Makefile.
...
Patch by arrowdodger!
llvm-svn: 123659
2011-01-17 16:35:14 +00:00
Oscar Fuentes
25ac830e72
Make config.h.cmake similar to config.h.in
...
Patch by arrowdodger!
llvm-svn: 123539
2011-01-15 13:35:37 +00:00
Oscar Fuentes
0a1b6b8ff2
Add some platform tests.
...
Patch by arrowdodger!
llvm-svn: 123388
2011-01-13 19:17:28 +00:00
Oscar Fuentes
f8e26b123c
Platform tests for argz_* functions.
...
Patch by arrowdodger!
llvm-svn: 123376
2011-01-13 15:06:32 +00:00
Oscar Fuentes
c8cb58e130
Add to the CMake build some options and platform tests supported by
...
the traditional build.
Patch by arrowdodger!
llvm-svn: 123233
2011-01-11 12:31:54 +00:00
Oscar Fuentes
77c4f70123
Made llvm_replace_compiler_option more robust. Use it on
...
llvm_process_sources.
llvm-svn: 123232
2011-01-11 12:31:34 +00:00
Oscar Fuentes
edfc184222
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.
llvm-svn: 123119
2011-01-09 14:34:39 +00:00
Oscar Fuentes
9bf259581c
Don't use -O3 on Mingw, as people report it as unreliable. Use -O2
...
instead.
llvm-svn: 123028
2011-01-07 20:31:03 +00:00
Oscar Fuentes
0db031d532
TableGen.cmake: sometimes the .td file is not in the current directory
...
(clang/include/clang/Basic/StmtNodes.td, for instance, is tablegenned
from clang/include/clang/AST/CMakeLists.txt) so it is not contained on
the list of all .td files on the current source directory which is
used as the DEPENDS of the custom command. We must add the .td file to
the DEPENDS list of the custom command. Otherwise some .inc files are
not regenerated when the corresponding .td file changes.
llvm-svn: 122768
2011-01-03 20:01:32 +00:00
Oscar Fuentes
13ce15ca69
LLVMProcessSources: add .def files along with .h files to targets for
...
the benefit of project-based generators (VS, XCode, etc).
llvm-svn: 122749
2011-01-03 16:59:52 +00:00
Oscar Fuentes
3aea80b564
Propagate to parent scope changes made to CMAKE_CXX_FLAGS.
...
llvm-svn: 122692
2011-01-02 12:30:18 +00:00
Oscar Fuentes
eb6d777882
CMake (MSVC): cmake automatically adds the /EHsc and /GR compiler
...
options. If we are building with exceptions/rtti disabled, we replace
/EHsc with /EHs-c- and /GR with /GR-, respectively. If we just add the
disabling options we get warnings like this:
cl : Command line warning D9025 : overriding '/EHs' with '/EHs-'
llvm-svn: 122648
2010-12-31 19:10:49 +00:00
Oscar Fuentes
9f2b3842a3
Fixes file extension for loadable modules on OS X.
...
Patch by Wesley Peck!
llvm-svn: 122395
2010-12-22 08:30:17 +00:00
Oscar Fuentes
029b1e3802
Update cmake library dependencies.
...
llvm-svn: 122239
2010-12-20 09:47:08 +00:00
Wesley Peck
15b1679cae
Reverting commit to LLVMLibDeps that was inadvertently done in 121649.
...
llvm-svn: 121651
2010-12-12 22:28:51 +00:00
Wesley Peck
632b5926d3
The ADD and ADDK (and all variants) instructions where flip-flopped in the MBlaze backend. This bug fix makes 64-bit math work on the MBlaze backend.
...
llvm-svn: 121649
2010-12-12 22:02:31 +00:00
NAKAMURA Takumi
a8c1c3fe22
Add dependency to "make check".
...
cmake/modules/AddLLVM.cmake: Add empty "phony" target in add_llvm_loadable_module() even if loadable module were not supported.
llvm-svn: 121455
2010-12-10 02:15:36 +00:00
Francois Pichet
82f3b5f945
Disable C++ exception handling on MSVC.
...
Total size of bin\Release on disk goes from 82.9 MB to 74.2 MB. (~10% saving)
llvm-svn: 120908
2010-12-04 14:30:22 +00:00
Francois Pichet
916fae2a34
Disable RTTI on Windows.
...
Total size of bin\Release on disk goes from 83.6 MB to 81.8MB. (~2% saving)
llvm-svn: 120901
2010-12-04 09:42:30 +00:00
Michael J. Spencer
ca242f2c36
Support/FileSystem: Fix MinGW build. It doesn't have _chsize_s.
...
llvm-svn: 120826
2010-12-03 18:48:56 +00:00
Michael J. Spencer
edb9523e09
Update library dependencies changed in the System -> Support merge.
...
llvm-svn: 120308
2010-11-29 19:28:48 +00:00
Michael J. Spencer
447762da85
Merge System into Support.
...
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
Wesley Peck
7699d6cfe9
Implement ELF object file writing support for the MBlaze backend. Its not perfect yet, but it works for many tests.
...
llvm-svn: 119952
2010-11-21 22:06:28 +00:00
Oscar Fuentes
b59ee62583
Updated library dependencies.
...
llvm-svn: 119592
2010-11-18 00:12:27 +00:00
Jim Grosbach
186747527a
Revert inadvertant checkin of CMake libdeps.
...
llvm-svn: 119355
2010-11-16 18:14:41 +00:00
Jim Grosbach
e600aba989
ARM conditional mov encoding fix.
...
llvm-svn: 119354
2010-11-16 18:13:42 +00:00
Oscar Fuentes
07c99ebf52
Updated CMake library dependencies.
...
llvm-svn: 119076
2010-11-14 21:17:08 +00:00
Wesley Peck
c542248602
1. Finishing MBlaze MC asm parser test cases
...
2. Parsing .word directive in MBlaze asm parser
3. Fixing hack where memory instructions reversed order of last two parameters
4. Fixing many improperly encoded instructions
5. Support parsing special instructions (MFS,MTS,etc.)
6. Removing unused functions from inst printer
llvm-svn: 118941
2010-11-12 23:30:17 +00:00
Wesley Peck
fc82674b9c
Adding working version of assembly parser for the MBlaze backend
...
Major cleanup of whitespace and formatting issues in MBlaze backend
llvm-svn: 118434
2010-11-08 19:40:01 +00:00
Wesley Peck
e9b429e96f
Adding disassembler to the MicroBlaze backend.
...
llvm-svn: 117420
2010-10-27 00:23:01 +00:00
Oscar Fuentes
ff11a23ef3
Loadable modules are not supported on Cygwin. PR 6655.
...
llvm-svn: 117130
2010-10-22 19:03:24 +00:00
Michael J. Spencer
46ea135ea7
Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.
...
llvm-svn: 117124
2010-10-22 18:45:12 +00:00
Oscar Fuentes
a522175a90
Avoid stalled file dependency when tablegenning.
...
Patch by Frits van Bommel!
llvm-svn: 117113
2010-10-22 17:37:42 +00:00
Oscar Fuentes
26b1d20b98
Don't try to guess svn version when current path is a symlink.
...
See PR 8473.
llvm-svn: 117109
2010-10-22 17:16:26 +00:00
Oscar Fuentes
861e51a244
Teach CMake to only touch tablegen-generated files if anything
...
actually changed.
Patch by Frits van Bommel!
llvm-svn: 117102
2010-10-22 16:20:10 +00:00
Michael J. Spencer
f572e3fc4c
Rename LLVM_IS_TARGET_BIG_ENDIAN to LLVM_IS_HOST_BIG_ENDIAN to reflect what it actually means.
...
llvm-svn: 117092
2010-10-22 08:47:28 +00:00
Michael J. Spencer
b550b66543
Support: Add Endian.h
...
llvm-svn: 117057
2010-10-21 20:28:21 +00:00
Wesley Peck
a7f6150c14
Adding initial AsmParser implementation for the MBlaze backend. It is
...
mostly based on the ARM AsmParser at this time and is not particularly
functional.
Changed the MBlaze data layout from:
"E-p:32:32-i8:8:8-i16:16:16-i64:32:32-f64:32:32-v64:32:32-v128:32:32-n32"
to:
"E-p:32:32:32-i8:8:8-i16:16:16"
because the MicroBlaze doesn't have i64, f64, v64, or v128 data types.
Cleaned up the MBlaze source code:
1. The floating point register class has been removed. The
MicroBlaze does not have floating point registers. Floating
point values are simply stored in integer registers.
2. Renaming the CPURegs register class to GPR to reflect the
standard naming.
3. Removing a lot of stale code from AsmPrinter after
the conversion to InstPrinter.
4. Simplified sign extended loads by marking them as
expanded in ISelLowering.
llvm-svn: 117054
2010-10-21 19:48:38 +00:00
Wesley Peck
c16f77fb27
Recommit 116986 with capitalization typo fixed.
...
llvm-svn: 116993
2010-10-21 03:57:26 +00:00
Wesley Peck
078db00f1d
Reverting the commit 116986. It was breaking the build on llvm-x86_64-linux though it
...
compiles on OS X. I'll ensure that it builds on a linux machine before committing
again.
llvm-svn: 116991
2010-10-21 03:34:22 +00:00
Wesley Peck
f608ac4db9
Major update of the MicroBlaze backend. The new features are:
...
1. A delay slot filler that searches for valid instructions
to fill the delay slot with. Previously NOPs would always
be inserted into delay slots.
2. Support for MC based instruction printer added.
3. Support for MC based machine code generation and ELF
file generation. ELF file generation does not yet
completely work as much of the ELF support infrastructure
is still x86/x86-64 specific.
4. General clean up of the MBlaze backend code. Much of the
tablegen code has been cleanup and simplified.
Bug Fixes:
1. Removed duplicate periods from subtarget feature descriptions.
2. Many of the instructions had bad machine code information
in the tablegen files. Much of this has been fixed.
llvm-svn: 116986
2010-10-21 03:09:55 +00:00
Oscar Fuentes
889c1e7d80
Build with RTTI and exceptions disabled. Only in GCC for now.
...
llvm-svn: 116682
2010-10-17 02:26:16 +00:00
Oscar Fuentes
ffe32e1137
When building shared libraries, link to required system libraries.
...
PR 8375
llvm-svn: 116479
2010-10-14 15:54:41 +00:00
Oscar Fuentes
d6c1f37f86
GetTargetTriple.cmake: detect MinGW 64 bits.
...
llvm-svn: 116424
2010-10-13 20:15:08 +00:00
Chris Lattner
1ef5e84c31
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.
llvm-svn: 116190
2010-10-11 05:44:40 +00:00
Michael J. Spencer
33a390e2ca
CMake: Fix warning in gtest.
...
llvm-svn: 115935
2010-10-07 18:12:54 +00:00
Jim Grosbach
f5e294027e
Update LLVMLibDeps
...
llvm-svn: 115583
2010-10-05 00:35:16 +00:00
Oscar Fuentes
010f24977d
Update library dependencies.
...
llvm-svn: 115404
2010-10-02 03:04:43 +00:00
Oscar Fuentes
fb8126796d
Export LLVM_ALL_TARGETS in LLVM.cmake. It is used by LLVMConfig.
...
llvm-svn: 115039
2010-09-29 15:28:55 +00:00
Oscar Fuentes
18811d503d
Simplified LLVMConfig.
...
llvm-svn: 114998
2010-09-28 22:38:39 +00:00
Oscar Fuentes
cd43c696c9
Use the canonical library name for library PIC16Passes.
...
llvm-svn: 114953
2010-09-28 14:24:47 +00:00
Oscar Fuentes
0fcb8c688d
Added library LLVMPIC16passes to CMake build.
...
llvm-svn: 114952
2010-09-28 14:02:45 +00:00
Oscar Fuentes
b35856e338
Added PTX target to the CMake build.
...
llvm-svn: 114951
2010-09-28 14:02:36 +00:00
Oscar Fuentes
5680231071
Removed remnant target library dependencies from LLVMLibDeps.cmake
...
llvm-svn: 114826
2010-09-27 13:49:41 +00:00
Oscar Fuentes
f80c3c1a30
Updated LLVMLibDeps.cmake
...
llvm-svn: 114825
2010-09-27 13:33:17 +00:00
Oscar Fuentes
46d8a93005
Reverting "CMake: Don't include tools, unittets, or examples as
...
available targets unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies
LLVM_INCLUDE_X"
It breaks the configuration phase when cmake is invoked without
parameters, it is too complex for the purpose and introduces an
incovenience for the user (as both LLVM_BUILD_X and LLVM_INCLUDE_X
must set to OFF for not including X on the build)
llvm-svn: 114795
2010-09-25 20:25:25 +00:00
Michael J. Spencer
e35a611aa5
CMake: Don't include tools, unittets, or examples as available targets
...
unless LLVM_INCLUDE_X is ON. LLVM_BUILD_X implies LLVM_INCLUDE_X
llvm-svn: 114747
2010-09-24 19:10:51 +00:00
Michael J. Spencer
1444f47deb
Fix whitespace.
...
llvm-svn: 114724
2010-09-24 09:00:56 +00:00
Oscar Fuentes
bcc8b2f9e5
cmake: test for the presence of fenv.h
...
llvm-svn: 114205
2010-09-17 20:30:48 +00:00
Oscar Fuentes
80a32d62f6
Updated LLVMLibDeps.cmake
...
llvm-svn: 114143
2010-09-17 00:43:53 +00:00
Michael J. Spencer
93c9b2ea93
Revert "CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally."
...
This reverts commit r113632
Conflicts:
cmake/modules/AddLLVM.cmake
llvm-svn: 113819
2010-09-13 23:59:48 +00:00