Michael J. Spencer
ce950c50c4
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
d88083b467
Update library dependencies changed in the System -> Support merge.
...
llvm-svn: 120308
2010-11-29 19:28:48 +00:00
Michael J. Spencer
d5ec932c3a
Merge System into Support.
...
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
Wesley Peck
e25f241e37
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
8b8fa79ce0
Updated library dependencies.
...
llvm-svn: 119592
2010-11-18 00:12:27 +00:00
Jim Grosbach
cf4418e0d6
Revert inadvertant checkin of CMake libdeps.
...
llvm-svn: 119355
2010-11-16 18:14:41 +00:00
Jim Grosbach
1b1636f0cb
ARM conditional mov encoding fix.
...
llvm-svn: 119354
2010-11-16 18:13:42 +00:00
Oscar Fuentes
24718cd14d
Updated CMake library dependencies.
...
llvm-svn: 119076
2010-11-14 21:17:08 +00:00
Wesley Peck
be71f5db40
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
f3909b741f
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
854507453a
Adding disassembler to the MicroBlaze backend.
...
llvm-svn: 117420
2010-10-27 00:23:01 +00:00
Oscar Fuentes
487431ce82
Loadable modules are not supported on Cygwin. PR 6655.
...
llvm-svn: 117130
2010-10-22 19:03:24 +00:00
Michael J. Spencer
8daaefa006
Endian: Get rid of LLVM_IS_HOST_BIG_ENDIAN.
...
llvm-svn: 117124
2010-10-22 18:45:12 +00:00
Oscar Fuentes
b7f2510588
Avoid stalled file dependency when tablegenning.
...
Patch by Frits van Bommel!
llvm-svn: 117113
2010-10-22 17:37:42 +00:00
Oscar Fuentes
bd0ca690c8
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
e9b7aa0d30
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
93269f7395
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
b9734a5b12
Support: Add Endian.h
...
llvm-svn: 117057
2010-10-21 20:28:21 +00:00
Wesley Peck
8a77999240
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
d646a12f25
Recommit 116986 with capitalization typo fixed.
...
llvm-svn: 116993
2010-10-21 03:57:26 +00:00
Wesley Peck
3478e641b9
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
c50372298d
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
a6ffccab95
Build with RTTI and exceptions disabled. Only in GCC for now.
...
llvm-svn: 116682
2010-10-17 02:26:16 +00:00
Oscar Fuentes
0d564b6bb5
When building shared libraries, link to required system libraries.
...
PR 8375
llvm-svn: 116479
2010-10-14 15:54:41 +00:00
Oscar Fuentes
03ba7cb432
GetTargetTriple.cmake: detect MinGW 64 bits.
...
llvm-svn: 116424
2010-10-13 20:15:08 +00:00
Chris Lattner
c9709f154d
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
303f42d7e6
CMake: Fix warning in gtest.
...
llvm-svn: 115935
2010-10-07 18:12:54 +00:00
Jim Grosbach
87bcae264c
Update LLVMLibDeps
...
llvm-svn: 115583
2010-10-05 00:35:16 +00:00
Oscar Fuentes
62a4818bf8
Update library dependencies.
...
llvm-svn: 115404
2010-10-02 03:04:43 +00:00
Oscar Fuentes
0e1a30e03a
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
64441f124a
Simplified LLVMConfig.
...
llvm-svn: 114998
2010-09-28 22:38:39 +00:00
Oscar Fuentes
b8b0209acb
Use the canonical library name for library PIC16Passes.
...
llvm-svn: 114953
2010-09-28 14:24:47 +00:00
Oscar Fuentes
748691cf20
Added library LLVMPIC16passes to CMake build.
...
llvm-svn: 114952
2010-09-28 14:02:45 +00:00
Oscar Fuentes
3c58c66484
Added PTX target to the CMake build.
...
llvm-svn: 114951
2010-09-28 14:02:36 +00:00
Oscar Fuentes
51ee15c70b
Removed remnant target library dependencies from LLVMLibDeps.cmake
...
llvm-svn: 114826
2010-09-27 13:49:41 +00:00
Oscar Fuentes
dc7625b8e3
Updated LLVMLibDeps.cmake
...
llvm-svn: 114825
2010-09-27 13:33:17 +00:00
Oscar Fuentes
40caeda472
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
3302cf4ac1
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
7160458b8e
Fix whitespace.
...
llvm-svn: 114724
2010-09-24 09:00:56 +00:00
Oscar Fuentes
2a81c4abe0
cmake: test for the presence of fenv.h
...
llvm-svn: 114205
2010-09-17 20:30:48 +00:00
Oscar Fuentes
37061461b3
Updated LLVMLibDeps.cmake
...
llvm-svn: 114143
2010-09-17 00:43:53 +00:00
Michael J. Spencer
90f807fda5
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
Michael J. Spencer
60e98e663a
CMake: Fix mingw32 build.
...
llvm-svn: 113676
2010-09-11 02:13:39 +00:00
Michael J. Spencer
98ad3f2ea7
CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.
...
llvm-svn: 113632
2010-09-10 21:14:25 +00:00
Michael J. Spencer
a72466bbca
CMake: Use the svn revision information from git-svn if available.
...
llvm-svn: 113405
2010-09-08 20:49:40 +00:00
Oscar Fuentes
b2a1074fdf
Fix cmake build without native target selected.
...
The cmake (+ MSVC) build is broken if you don't select your native
target.
e.g. 'cmake -D LLVM_TARGETS_TO_BUILD="MyNonNativeTarget" .'
This is because cmake currently sets the LLVM_NATIVE_* definitions
regardless of whether the native target is selected (causing build
errors).
Patch by Mike Gist!
llvm-svn: 112946
2010-09-03 02:22:23 +00:00
Eric Christopher
da5541e56d
Fix LLVM target initialization to deal with sociopathic outside projects
...
that like to randomly define things like "X86", regenerate autoconf bits
and update cmake.
Fixes PR7852.
Patch by Xerxes Rånby!
llvm-svn: 112499
2010-08-30 18:34:48 +00:00
Chandler Carruth
eddd738031
Attempt to remove the MSIL backend from CMake as well based on Chris's r112375.
...
llvm-svn: 112464
2010-08-30 07:25:54 +00:00
Oscar Fuentes
10d63be9fe
Updated CMake library dependencies. Removed unnecessary component name
...
from llvm-link/CMakeLists.txt
llvm-svn: 112153
2010-08-26 02:29:53 +00:00
Oscar Fuentes
f5fe003dce
Updated LLVMLibDeps.cmake
...
llvm-svn: 111112
2010-08-15 22:14:42 +00:00
Oscar Fuentes
ee14ce612a
Updated the GenLibDeps -> LLVMLibDeps.cmake transformation example.
...
llvm-svn: 111104
2010-08-15 15:08:27 +00:00
Oscar Fuentes
e546bc4ea0
CMake: corrections on LLVM.cmake external services.
...
llvm-svn: 110763
2010-08-11 00:51:32 +00:00
Oscar Fuentes
c37bd692ce
Update cmake library dependencies.
...
llvm-svn: 110594
2010-08-09 20:33:20 +00:00
Oscar Fuentes
fa75af0f2a
CMake: llvm_map_components_to_libraries now returns system libs too.
...
llvm-svn: 110563
2010-08-09 03:47:11 +00:00
Oscar Fuentes
d45ea50baa
CMake: system for providing llvm-config-like features to the user.
...
The user can use a cmake function for obtaining the LLVM libraries
corresponding to a list of LLVM components.
llvm-svn: 110560
2010-08-09 03:26:43 +00:00
Oscar Fuentes
38ae8f5381
CMake: set configure macro LLVM_PREFIX
...
llvm-svn: 110536
2010-08-08 04:32:21 +00:00
Oscar Fuentes
8a58d72172
CMake: configure header llvm-config.h
...
This is the cmake equivalent of r110532, which fixed bug #7809 .
llvm-svn: 110535
2010-08-08 04:17:18 +00:00
Oscar Fuentes
d2900140df
When building from git, add ref-id to PACKAGE_VERSION
...
llvm-svn: 110301
2010-08-05 02:22:51 +00:00
Oscar Fuentes
86529ccfff
New system for choosing CRT type on MSVC.
...
Is setted on a per build type basis. This is useful for generators
that comprise several build types, i.e. VC++ solutions.
llvm-svn: 110296
2010-08-05 01:25:48 +00:00
Oscar Fuentes
7186be986b
CMake: Change somme target library names:
...
XCore->XCoreGen
PIC16->PIC16CodeGen
After updating your working copy, the first build will fail because it
is using the old library dependencies. Start the build again and it
will work fine.
llvm-svn: 110127
2010-08-03 17:40:31 +00:00
Oscar Fuentes
059ece6905
CMake: add version control info to PACKAGE_VERSION, if available.
...
Adds "svn" or "git", depending on the VCS used. If svn, adds the
revision number as well.
llvm-svn: 110121
2010-08-03 17:28:09 +00:00
Daniel Dunbar
3dd4738933
build: Add LLVM_NATIVE_ARCHNAME, which has the sensible value, without "Target"
...
appended.
llvm-svn: 110109
2010-08-03 14:26:17 +00:00
Oscar Fuentes
38529c57b6
Improve discrimination of unknown libraries from ignored targets on
...
LLVMConfig.
llvm-svn: 110065
2010-08-02 21:24:12 +00:00
Oscar Fuentes
cd9be9a914
explicit_map_components_to_libraries now does not complain when there
...
is a dependence on an LLVM target that is not included on the build.
When LLVM_TARGETS_TO_BUILD didn't include all the targets, the
function emitted an error like
"Library LLVMArmParser not found in list of llvm libraries."
llvm-svn: 110060
2010-08-02 20:48:01 +00:00
Oscar Fuentes
555c1105a5
Updated LLVMLibDeps.cmake.
...
llvm-svn: 110055
2010-08-02 18:36:53 +00:00
Oscar Fuentes
4742c01c2a
Prefix next' iterator operation with
llvm::'.
...
Fixes potential ambiguity problems on VS 2010.
Patch by nobled!
llvm-svn: 110029
2010-08-02 06:00:15 +00:00
Nick Lewycky
4d160cb75c
Don't link against libm and libpthread which don't exist in BeOS/Haiku. Also,
...
Haiku like Linux provides <regex.h>, so use it. Patch by Paul Davey!
llvm-svn: 106620
2010-06-23 06:48:34 +00:00
Douglas Gregor
5d2a26361d
Allow absolute paths in LLVM_TARGET_DEFINITIONS for CMake's TableGen rule
...
llvm-svn: 106219
2010-06-17 15:17:07 +00:00
Jeffrey Yasskin
f468a14fb1
Tell Valgrind when we modify already-executed machine code so it knows
...
to re-instrument the code. We depend on the system valgrind.h to
avoid adding a new license.
llvm-svn: 98529
2010-03-15 04:57:55 +00:00
Daniel Dunbar
479c1ef816
Update CMake LibDeps
...
llvm-svn: 94185
2010-01-22 18:14:14 +00:00
Daniel Dunbar
045966d7bf
Update CMake LibDeps
...
llvm-svn: 92540
2010-01-04 23:17:24 +00:00
Douglas Gregor
57be824b19
Fix CMake build for InstCombine changes
...
llvm-svn: 92519
2010-01-04 21:58:55 +00:00
Daniel Dunbar
4212bb197b
CMake: Update lib deps.
...
llvm-svn: 91786
2009-12-19 21:27:30 +00:00
Sean Callanan
18fa59f381
Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit
...
incarnations), integrated into the MC framework.
The disassembler is table-driven, using a custom TableGen backend to
generate hierarchical tables optimized for fast decode. The disassembler
consumes MemoryObjects and produces arrays of MCInsts, adhering to the
abstract base class MCDisassembler (llvm/MC/MCDisassembler.h).
The disassembler is documented in detail in
- lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime)
- utils/TableGen/DisassemblerEmitter.cpp (table emitter)
You can test the disassembler by running llvm-mc -disassemble for i386
or x86_64 targets. Please let me know if you encounter any problems
with it.
llvm-svn: 91749
2009-12-19 02:59:52 +00:00
Oscar Fuentes
e1f5d048d7
CheckAtomic.cmake: Put all C++ code inside CHECK_CXX_SOURCE_COMPILES.
...
llvm-svn: 90685
2009-12-06 00:06:33 +00:00
Oscar Fuentes
ec99766e2e
Fix for atomic intrinsics detection when using MSVC.
...
Patch by Michael Beck!
llvm-svn: 90683
2009-12-05 23:19:33 +00:00
Oscar Fuentes
731f4b47f8
* cmake/modules/LLVMLibDeps.cmake: Updated library dependencies.
...
llvm-svn: 90169
2009-11-30 23:48:51 +00:00
Daniel Dunbar
7f52922e77
Add the rest of the build system logic for optional target disassemblers
...
llvm-svn: 89841
2009-11-25 04:46:58 +00:00
Oscar Fuentes
a24207aad2
CMake: Updated library dependencies.
...
llvm-svn: 89637
2009-11-23 00:40:39 +00:00
Oscar Fuentes
cc71a4aee8
CMake: Do not try to install a target before it is defined.
...
llvm-svn: 89636
2009-11-23 00:32:42 +00:00
Oscar Fuentes
6cbe196ddc
CMake: generate targets for tools and examples even when
...
LLVM_BUILD_TOOLS or LLVM_BUILD_EXAMPLES are OFF.
llvm-svn: 89635
2009-11-23 00:21:43 +00:00
Oscar Fuentes
88c6014eb8
Use CMAKE_DL_LIBS instead of raw library name. Fixes bug 5536.
...
Patch by Tobias Grosser!
llvm-svn: 89406
2009-11-19 23:21:43 +00:00
Oscar Fuentes
27c9bbc709
CMake: Pass -lm to check_symbol_exists for detecting several math
...
functions like floorf, ceilf, ... Add test for detecting nearbyintf.
This change was prompted by test/Transforms/SimplifyLibCalls/floor.ll
llvm-svn: 86954
2009-11-12 05:36:09 +00:00
Douglas Gregor
852c7d16df
CMake: Add Darwin-specific linker flags for building loadable modules
...
llvm-svn: 86684
2009-11-10 15:30:33 +00:00
Oscar Fuentes
ce417d0ac2
CMake: Support for building llvm loadable modules.
...
llvm-svn: 86656
2009-11-10 02:45:37 +00:00
Oscar Fuentes
555721d2c2
CMake: Remove unnecessary `unset' which was not supported by old cmake
...
releases.
llvm-svn: 86644
2009-11-10 01:45:05 +00:00
Oscar Fuentes
b05535f7c5
CMake: Detect gv, circo, twopi, neato, fdo, dot and dotty.
...
Patch by Arnaud Allard de Grandmaison!
llvm-svn: 86547
2009-11-09 15:26:40 +00:00
Daniel Dunbar
8e90c79da7
Fix CMake reporting of target triple.
...
llvm-svn: 86419
2009-11-07 23:52:27 +00:00
Daniel Dunbar
656c9bf461
Stop running get_target_triple more than we need to.
...
llvm-svn: 86418
2009-11-07 23:52:20 +00:00
Oscar Fuentes
a0309933c6
CMake: Detect dotty.
...
Patch by Arnaud Allard de Grandmaison!
llvm-svn: 86153
2009-11-05 19:03:26 +00:00
Oscar Fuentes
5866071c1e
CMake: do not test for pthread and dl libraries on Windows (except
...
Cygwin). Fixes PR 5368.
llvm-svn: 86152
2009-11-05 18:57:56 +00:00
Oscar Fuentes
b3bc38f392
CMake: Report an error if there is an unknown .cpp file in a source
...
directory.
This is useful in case someone who works with the config&make build
system forgot to add a file to its CMakeLists.txt. Instead of
obtaining undefined references at link time, cmake will complain at
configure time on the first build after a svn update.
llvm-svn: 85817
2009-11-02 19:11:03 +00:00
Benjamin Kramer
0613c84aba
Teach cmake that mk[sd]temp is defined in stdlib.h on some systems.
...
This fixes parallel build with clang on glibc platforms.
llvm-svn: 85414
2009-10-28 18:37:31 +00:00
Chandler Carruth
766362c707
Move DataTypes.h to include/llvm/System, update all users. This breaks the last
...
direct inclusion edge from System to Support.
llvm-svn: 85086
2009-10-26 01:35:46 +00:00
Daniel Dunbar
59d81da39c
Update CMake dependencies.
...
llvm-svn: 85013
2009-10-24 20:32:43 +00:00
Oscar Fuentes
5bb8ed7795
Updated cmake library dependencies.
...
llvm-svn: 84564
2009-10-19 23:00:00 +00:00
Edward O'Callaghan
af49208035
Fix LLVM CMake build system so that it may now work on Solaris and AuroraUX.
...
llvm-svn: 83819
2009-10-12 04:00:11 +00:00
Edward O'Callaghan
322db411d4
CMake misses a check for sbrk on NetBSD.
...
llvm-svn: 83341
2009-10-05 23:05:32 +00:00
Douglas Gregor
a3fb17c280
Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo
...
llvm-svn: 83203
2009-10-01 17:25:36 +00:00
Jeffrey Yasskin
ae5a12200c
Fix a compile failure introduced by r82675 on MinGW which doesn't have
...
setenv(). This patch just disables the test rather than getting putenv() to
work. Thanks to Sandeep Patel for reporting the problem.
llvm-svn: 82797
2009-09-25 21:07:20 +00:00