Jim Grosbach
40411cc409
Propogate the error message, not just the error state.
...
llvm-svn: 128094
2011-03-22 18:19:42 +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
Jim Grosbach
7bf595348e
Update link components.
...
Also perform the required dark rituals and sacrifices to placate the buildbot
spirits. We shall see if they are appeased...
llvm-svn: 128067
2011-03-22 03:10:14 +00:00
Oscar Fuentes
e4840e2918
Build the new RuntimeDyld library.
...
llvm-svn: 128035
2011-03-21 23:07:53 +00:00
Jim Grosbach
f016b0a359
Library-ize the dyld components of llvm-rtdyld.
...
Move the dynamic linking functionality of the llvm-rtdyld program into an
ExecutionEngine support library. Update llvm-rtdyld to just load an object
file into memory, use the library to process it, then run the _main()
function, if one is found.
llvm-svn: 128031
2011-03-21 22:15:52 +00:00
Bill Wendling
00f0cddfd4
We need to pass the TargetMachine object to the InstPrinter if we are printing
...
the alias of an InstAlias instead of the thing being aliased. Because we need to
know the features that are valid for an InstAlias.
This is part of a work-in-progress.
llvm-svn: 127986
2011-03-21 04:13:46 +00:00
Oscar Fuentes
cae1b90915
Make llvm-config.in configuration more MSYS-friendly.
...
Some of those POSIX <-> Windows command line conversions ended on
failure.
llvm-svn: 127958
2011-03-19 22:52:33 +00:00
Oscar Fuentes
916fb1a62b
CMake: store TARGET_TRIPLE on llvm-config.in.
...
llvm-svn: 127957
2011-03-19 22:52:25 +00:00
Jim Grosbach
7b162490fd
Beginnings of MC-JIT code generation.
...
Proof-of-concept code that code-gens a module to an in-memory MachO object.
This will be hooked up to a run-time dynamic linker library (see: llvm-rtdyld
for similarly conceptual work for that part) which will take the compiled
object and link it together with the rest of the system, providing back to the
JIT a table of available symbols which will be used to respond to the
getPointerTo*() queries.
llvm-svn: 127916
2011-03-18 22:48:41 +00:00
Rafael Espindola
5b778b2e60
Use lazy parsing in LTO. Unfortunately this is only a 3% time saving for
...
'ar'. Have to figure out how to make libLTO even lazier.
llvm-svn: 127901
2011-03-18 19:51:00 +00:00
Jim Grosbach
486e57f694
Add llvm-rtdyld support for loading 32-bit code.
...
Factor out the 64-bit specific bits into a helper function and add an
equivalent that loads the 32-bit sections. This allows using llvm-rtdyld on ARM.
llvm-svn: 127892
2011-03-18 18:54:32 +00:00
Oscar Fuentes
9d8ffa9dba
Update list of link components for llvm-rtdyld.
...
llvm-svn: 127887
2011-03-18 17:27:04 +00:00
Jim Grosbach
4d5284b44b
Naming conventional tidy up.
...
llvm-svn: 127886
2011-03-18 17:24:21 +00:00
Jim Grosbach
0072cdbc50
MachO file loader and execution utility.
...
Add a bone-simple utility to load a MachO object into memory, look for
a function (main) in it, and run that function directly. This will be used
as a test and development platform for MC-JIT work regarding symbol resolution,
dynamic lookup, etc..
Code by Daniel Dunbar.
llvm-svn: 127885
2011-03-18 17:11:39 +00:00
Rafael Espindola
c78f65775a
Simplify the computation of undefined symbols. Instead of walking
...
functions and initializers, just report the declarations present in
the module.
The motivation is to open the way for using the lazy module parsing,
which should speed up clients that just want a symbol list (nm, ar).
This is slightly less precise, but since both -strip-dead-prototypes
and -globaldce are part of the standard pipeline, this shouldn't
change the result for clang/dragonegg produced binaries.
Any decl in an IL file was also put there because a FE expected it
to be necessary, so this should not be a problem for "-O0 -emit-llvm".
As a sanity check, I have bootstrapped clang on linux and built
firefox on both linux and darwin. A clang bootstrap on darwin
with LTO fails with or without this patch because, ironically,
the linker doesn't like the combination of dead_strip and LTO
when building libLTO.so :-)
llvm-svn: 127870
2011-03-18 05:12:38 +00:00
NAKAMURA Takumi
f4d5346fb4
tools/lto/LTOModule.cpp: Eliminate an unused variable.
...
llvm-svn: 127859
2011-03-18 03:21:11 +00:00
NAKAMURA Takumi
ce60d4cd4d
llvm-bcanalyzer.cpp: Tweak format string to suppress warnings on mingw32-g++.
...
llvm-svn: 127858
2011-03-18 03:21:04 +00:00
Rafael Espindola
ab959a2e68
Use RequiresNullTerminator to create buffers without a null terminator
...
instead of copying.
llvm-svn: 127835
2011-03-17 22:18:42 +00:00
Stuart Hastings
ec54bd755f
Reapply: Add type output to llvm-dis annotations. Patch by Yuri!
...
llvm-svn: 127824
2011-03-17 19:50:04 +00:00
Stuart Hastings
ead01c40e1
Revert 127813 while fixing broken test.
...
llvm-svn: 127814
2011-03-17 16:54:27 +00:00
Stuart Hastings
8e08a786bf
Add type output to llvm-dis. Patch by Yuri!
...
llvm-svn: 127813
2011-03-17 16:30:14 +00:00
Rafael Espindola
b39c7c7b17
Add support in the LTO library for loading an object from the middle
...
of an file.
llvm-svn: 127781
2011-03-17 00:36:11 +00:00
Francois Pichet
dfeda09345
Make llvm::Consumer a class (to remove a MSVC warning since Consumer is later forward declared as a struct)
...
llvm-svn: 127632
2011-03-14 23:07:21 +00:00
Renato Golin
4b6ae939ca
This patch is a big refactoring of llvm-diff. It doesn't add new features, but it re-organizes the old features, so I can insert the MetadataEngine to use the same infrastructure.
...
llvm-svn: 127627
2011-03-14 22:22:46 +00:00
Oscar Fuentes
ac824ee462
LTO is not ready for Windows.
...
llvm-svn: 127562
2011-03-13 03:06:59 +00:00
Oscar Fuentes
3685f2762b
Build EnhancedDisassembly as a shared library too.
...
llvm-svn: 127555
2011-03-12 22:01:47 +00:00
Oscar Fuentes
02c446a73a
Build LTO as a static library too.
...
llvm-svn: 127553
2011-03-12 22:01:36 +00:00
Oscar Fuentes
68c1f55fdc
Build LTO as a static library too.
...
llvm-svn: 127549
2011-03-12 17:32:30 +00:00
Oscar Fuentes
1fc0c8ab78
Update link components for llvm-dis and LTO.
...
llvm-svn: 127545
2011-03-12 16:48:49 +00:00
Oscar Fuentes
0122841626
Force re-linking of LLVMgold.so when its exports file changes.
...
llvm-svn: 127473
2011-03-11 18:27:13 +00:00
Oscar Fuentes
87e4a4da0d
Fix processing of gold.exports.
...
llvm-svn: 127471
2011-03-11 18:07:46 +00:00
Devang Patel
982efb5c89
While printing annotations, print line number and variable name if debug info is present.
...
llvm-svn: 127470
2011-03-11 18:07:33 +00:00
Oscar Fuentes
64d05bc281
Add LTO and gold plugin to the CMake build. Linux-only, support for
...
other systems pending.
PR9456.
llvm-svn: 127466
2011-03-11 15:44:24 +00:00
Rafael Espindola
1e49a6d9bc
Add a special streamer to libLTO that just records symbols definitions and
...
uses.
The result produced by the streamer is used to give the linker more accurate
information and to add to llvm.compiler.used. The second improvement removes
the need for the user to add __attribute__((used)) to functions only used in
inline asm. The first one lets us build firefox with LTO on Darwin :-)
llvm-svn: 126830
2011-03-02 04:14:42 +00:00
Rafael Espindola
7e5fe6ce1c
Gold now rescans archives as needed, so the pass-through options are not
...
necessary anymore.
llvm-svn: 126580
2011-02-27 20:30:22 +00:00
Rafael Espindola
92c06ba158
bfd was fixed, remove the work around.
...
llvm-svn: 126579
2011-02-27 20:15:37 +00:00
Rafael Espindola
908d391bd2
LTO uses MC now.
...
llvm-svn: 126546
2011-02-26 16:44:13 +00:00
Rafael Espindola
fac373cacb
Switch LTO to use MC. This takes the linking of libxul.so from about 7m to
...
6m30.
llvm-svn: 126426
2011-02-24 21:04:06 +00:00
Chris Lattner
7c3230d348
fit in 80 cols.
...
llvm-svn: 126399
2011-02-24 18:59:38 +00:00
Benjamin Kramer
c053644217
Plug some leaks in edis.
...
- Don't leak parsed operands during tokenization.
- Don't leak printed insts in llvm-mc.
llvm-svn: 126381
2011-02-24 11:03:19 +00:00
Sean Callanan
be81988c99
Fixed a bug in the enhanced disassembly tester that
...
caused it to only parse one line of input.
llvm-svn: 126301
2011-02-23 03:29:41 +00:00
Oscar Fuentes
ab0465020b
CMake: remove unnecessary variable.
...
llvm-svn: 126224
2011-02-22 15:40:20 +00:00
Sean Callanan
5b23294799
Fixed llvm-mc in edis mode to use the result of
...
operand.evaluate as an error code, not as the
contents of the operand.
llvm-svn: 126181
2011-02-22 02:09:15 +00:00
Rafael Espindola
9ef90d5b35
Dispose modules early and only create codegen when the plugin is being
...
used by the linker and not by nm or ar.
llvm-svn: 126089
2011-02-20 18:28:29 +00:00
Rafael Espindola
477d11f9a0
Fix some memory leaks and avoid looking in the hash tables twice.
...
libxul links in 7m0.403s.
llvm-svn: 126085
2011-02-20 16:27:25 +00:00
Stephen Wilson
a32b8d7801
This patch lets LLDB build as an LLVM subproject. LLDB is not built in
...
parallel with the rest of the tools directory as it depends on Clang.
This patch was first applied in r125956 and subsequently reverted in
r125964 as it broke in-tree builds. Makefile.rules was fixed up in
r126070 to handle missing optional directories for the in-tree case,
so it should be safe now to bring this patch back in.
llvm-svn: 126071
2011-02-20 04:17:15 +00:00
Rafael Espindola
d4f34d840e
Add modules to codegen as soon as possible. This reduces the link time
...
of libxul from 12m31.084s to 7m1.359s.
llvm-svn: 126052
2011-02-19 21:49:57 +00:00
Mikhail Glushenkov
82e559837a
Make "-opt [-emit-llvm]" work for .ll files.
...
Patch by Kaelyn Uhrain!
llvm-svn: 126000
2011-02-19 00:33:27 +00:00
Chris Lattner
1341df93f7
add a way to disable all builtins, wire it up to opt's -disable-simplifylibcalls flag.
...
llvm-svn: 125978
2011-02-18 22:34:03 +00:00
Chris Lattner
15c8b5ef8b
Have opt set up a specific TargetLibraryInfo for modules
...
with a triple.
llvm-svn: 125970
2011-02-18 22:13:01 +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
Owen Anderson
d2f7431fa8
Revert r125956, which broke the build if you _don't_ have lldb checked out.
...
llvm-svn: 125964
2011-02-18 21:33:23 +00:00
Stephen Wilson
880a6129e2
This patch lets LLDB build as an LLVM subproject. LLDB is not built in
...
parallel with the rest of the tools directory as it depends on Clang.
llvm-svn: 125956
2011-02-18 20:50:33 +00:00
Peter Collingbourne
53049153cf
Make -disable-simplify-libcalls work with -std-compile-opts
...
llvm-svn: 125824
2011-02-18 02:59:21 +00:00
Rafael Espindola
6b6ed5d1f9
Add a debug obj-path option to make it easy to keep the .o produce by LTO.
...
llvm-svn: 125663
2011-02-16 11:19:44 +00:00
Rafael Espindola
70d8015063
Switch llvm to using comdats. For now always use groups with a single
...
section.
llvm-svn: 125526
2011-02-14 22:23:49 +00:00
Chris Lattner
20541a6da6
improve solaris support, from PR9109, patch by Yuri!
...
llvm-svn: 125456
2011-02-13 08:38:44 +00:00
Rafael Espindola
8cc5910dbc
Preserve aliases if needed.
...
llvm-svn: 125439
2011-02-12 18:03:13 +00:00
Rafael Espindola
3937ded624
Fix a silly bug I introduced when dropping std::string.
...
llvm-svn: 125420
2011-02-12 00:19:56 +00:00
Chris Lattner
cee9db2b6f
fix dumping of METADATA_ATTACHMENT2 names, patch by Peter Housel!
...
llvm-svn: 125367
2011-02-11 05:50:01 +00:00
Rafael Espindola
34b59389ea
Remove std::string version of getNameWithPrefix.
...
llvm-svn: 125363
2011-02-11 05:23:09 +00:00
NAKAMURA Takumi
3de6c8607e
CMake: LLVM_NO_RTTI must be obsolete now!
...
llvm-svn: 125274
2011-02-10 09:13:39 +00:00
NAKAMURA Takumi
cec7e6828e
tools/llvm-ld/CMakeLists.txt: llvm-ld depends on llvm-stub at runtime.
...
llvm-svn: 125166
2011-02-09 04:17:47 +00:00
NAKAMURA Takumi
db06756c9c
tools/llvm-ld: Cygwin can handle #!shbang.
...
llvm-svn: 125165
2011-02-09 04:17:39 +00:00
Rafael Espindola
56e41f7f0b
Don't open the file again in the gold plugin. To be able to do this, update
...
MemoryBuffer::getOpenFile to not close the file descriptor.
llvm-svn: 125128
2011-02-08 22:40:47 +00:00
Andrew Trick
8665d59f46
Added bugpoint options: -compile-custom and -compile-command=...
...
I've been using this mode to narrow down llc unit tests. Example
custom compile script:
llc "$@"
not pygrep.py 'mul\s+r([0-9]), r\1,' < bugpoint-test-program.s
llvm-svn: 125096
2011-02-08 18:20:48 +00:00
Andrew Trick
69a963e377
whitespace
...
llvm-svn: 125095
2011-02-08 18:07:10 +00:00
Rafael Espindola
08bccdad19
Don't tell the linker about available_externally definitions. If we do, it will
...
complain about duplicated definitions.
llvm-svn: 124634
2011-02-01 00:41:51 +00:00
Devang Patel
b07ec831cf
While printing "interesting" breakpoint locations for debug info quality test harness, focus only on entry block's terminator for now.
...
llvm-svn: 124610
2011-01-31 21:36:24 +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
Rafael Espindola
b3eca9bb71
Add support for the --noexecstack option.
...
llvm-svn: 124077
2011-01-23 17:55:27 +00:00
Tobias Grosser
7dbb48244f
RegionPassPrinter should contain the name of the pass printed
...
llvm-svn: 123941
2011-01-20 21:03:20 +00:00
Michael J. Spencer
c6bc900893
llvm-objdump: Remove redundant includes.
...
llvm-svn: 123902
2011-01-20 07:22:13 +00:00
Michael J. Spencer
05350e6d7c
llvm-nm: Fix warning.
...
llvm-svn: 123901
2011-01-20 07:22:04 +00:00
Michael J. Spencer
2670c2528c
Add llvm-objdump
...
llvm-svn: 123898
2011-01-20 06:39:06 +00:00
Michael J. Spencer
b8672a50c0
llvm-nm: Update to use the new LLVMObject library.
...
llvm-svn: 123897
2011-01-20 06:38:57 +00:00
Michael J. Spencer
06f5223621
gold: MinGW fix.
...
llvm-svn: 123886
2011-01-20 05:43:16 +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
Ted Kremenek
6677f65de1
Fix memory leak found by clang static analyzer.
...
llvm-svn: 123487
2011-01-14 22:34:17 +00:00
Devang Patel
610c41e7b0
Disable debug mode.
...
llvm-svn: 123443
2011-01-14 15:55:50 +00:00
Devang Patel
331df548c3
Little help to debug the bugpoint itself.
...
Patch by Bob Wilson.
llvm-svn: 123390
2011-01-13 19:48:54 +00:00
Michael J. Spencer
83bd49d4f9
Fix Whitespace.
...
llvm-svn: 123152
2011-01-10 02:34:40 +00:00
Michael J. Spencer
58df2e00b2
Support/Path: Deprecate PathV1::exists and replace all uses with PathV2::fs::exists.
...
llvm-svn: 123151
2011-01-10 02:34:23 +00:00
Devang Patel
39bd6cebcd
Do not include DataTypes.h in llvm-c/lto.h.
...
This means avoid using uint32_t. This patch reverts r112200 and fixes original problem by fixing argument type in lto.cpp.
llvm-svn: 123038
2011-01-07 22:26:25 +00:00
Rafael Espindola
9f9a10691a
Correctly disassemble truncated asm.
...
Patch by Richard Simth.
llvm-svn: 122962
2011-01-06 16:48:42 +00:00
Chris Lattner
bf0aa927cc
split dom frontier handling stuff out to its own DominanceFrontier header,
...
so that Dominators.h is *just* domtree. Also prune #includes a bit.
llvm-svn: 122714
2011-01-02 22:09:33 +00:00
NAKAMURA Takumi
495afdffd7
autoconf: Add --disable-embed-stdcxx to suppress linking libstdc++.a into llvm.dll with --enable-shared on Cygming.
...
Cygwin has stdc++.dll in it's distribution, and we can assume distro's stdc++.dll might be available.
llvm-svn: 122622
2010-12-29 03:59:14 +00:00
Michael J. Spencer
ca93d8406d
Support/PathV1: Deprecate get{Basename,Dirname,Suffix}.
...
llvm-svn: 122157
2010-12-18 22:23:07 +00:00
Owen Anderson
c15ab07cff
Revert r122143 through r122140, which collectively broke the LLVMC tests on
...
the buildbots.
llvm-svn: 122149
2010-12-18 07:37:18 +00:00
Michael J. Spencer
4f63507d05
Support/PathV1: Deprecate get{Basename,Dirname,Suffix}.
...
llvm-svn: 122141
2010-12-18 04:13:36 +00:00
Michael J. Spencer
a646f39c67
llvm-dis: Fix memory leak. ParseBitcodeFile should be taking ownership of
...
the MemoryBuffer*, however, it doesn't seem to delete it.
llvm-svn: 122004
2010-12-16 22:37:52 +00:00
Michael J. Spencer
5223d53697
llvm-dis: Simplify MemoryBuffer usage.
...
llvm-svn: 121975
2010-12-16 16:23:38 +00:00
Michael J. Spencer
7fda8fee25
Fix whitespace.
...
llvm-svn: 121974
2010-12-16 16:23:30 +00:00
Daniel Dunbar
73a860b290
build: Fix ONLY_TOOLS to not build lto etc. unless specified.
...
llvm-svn: 121969
2010-12-16 15:42:26 +00:00
Daniel Dunbar
2115a3f033
Fix some compiler warnings.
...
llvm-svn: 121959
2010-12-16 04:36:42 +00:00
Michael J. Spencer
39a0ffc394
MemoryBuffer now return an error_code and returns a OwningPtr<MemoryBuffer> via an out parm.
...
llvm-svn: 121958
2010-12-16 03:29:14 +00:00
Daniel Dunbar
ecd0c8a557
MC: Make TargetAsmBackend available to the AsmStreamer.
...
- Treaty talks on the non-proliferation of MC objects broke down.
llvm-svn: 121949
2010-12-16 03:05:59 +00:00
Mikhail Glushenkov
224404f851
Copy-pastos.
...
llvm-svn: 121829
2010-12-15 01:22:34 +00:00
Mikhail Glushenkov
a59a53f455
Remove ConvertToMAttrImpl, it became too '-march'-specific.
...
llvm-svn: 121828
2010-12-15 01:22:29 +00:00
Mikhail Glushenkov
63e51958f1
llvmc: Support -march arguments that should be forwarded to llc as -mcpu.
...
llvm-svn: 121827
2010-12-15 01:22:25 +00:00
Mikhail Glushenkov
8dced6b08e
llvmc: Better -mfpu/-mcpu support for ARM & PPC.
...
llvm-svn: 121826
2010-12-15 01:22:20 +00:00
Mikhail Glushenkov
8084dc957a
llvmc: more complete -march table for ARM.
...
llvm-svn: 121825
2010-12-15 01:22:15 +00:00
Mikhail Glushenkov
0929a09306
llvmc: Support -mabi/-mfloat-abi.
...
llvm-svn: 121824
2010-12-15 01:22:10 +00:00
Mikhail Glushenkov
6e0252c7b1
llvmc: Forward -march/-mcpu/-mtune to as & ld.
...
llvm-svn: 121823
2010-12-15 01:22:05 +00:00
NAKAMURA Takumi
e737e26144
macho-dump: Fix CMake build, following up to r121466.
...
llvm-svn: 121476
2010-12-10 09:18:26 +00:00
Rafael Espindola
0a017a6db2
Fixed version of 121434 with no new memory leaks.
...
llvm-svn: 121471
2010-12-10 07:39:47 +00:00
Daniel Dunbar
a5d9f6df8f
macho-dump: Switch to C++ macho-dump tool.
...
llvm-svn: 121466
2010-12-10 06:19:45 +00:00
Daniel Dunbar
7bfb872d3d
Mach-O: Tweak field name.
...
llvm-svn: 121465
2010-12-10 06:19:39 +00:00
Rafael Espindola
a945a34c73
Revert my previous patch to make the valgrind bots happy.
...
llvm-svn: 121461
2010-12-10 04:01:09 +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
Rafael Espindola
56eb741237
Initial support for the cfi directives. This is just enough to get
...
f:
.cfi_startproc
nop
.cfi_endproc
assembled (on ELF).
llvm-svn: 121434
2010-12-09 23:48:29 +00:00
Devang Patel
197df5c9c8
Print breakpoints for call instructions. This is used by optimized debug info test harness.
...
llvm-svn: 121432
2010-12-09 23:37:07 +00:00
Dan Gohman
f749ad734f
Give CurStreamType's enum a name. This works around what is apparently
...
a bug in Apple GCC 4.0.
llvm-svn: 121409
2010-12-09 20:35:40 +00:00
Michael J. Spencer
d422723721
More code not compiled by CMake. :(.
...
llvm-svn: 121387
2010-12-09 18:06:07 +00:00
Michael J. Spencer
7b6fef82d4
Support/MemoryBuffer: Replace all uses of std::string *ErrMsg with error_code &ec. And fix clients.
...
llvm-svn: 121379
2010-12-09 17:36:48 +00:00
Devang Patel
786a05e6ad
Add a simple breakpoint location printer. This will be used by upcoming "debug info in optimized code" quality test harness to set breakpoints at "interesting" locations.
...
llvm-svn: 121078
2010-12-07 00:33:43 +00:00
Devang Patel
2379f3abd5
Do not try luck by using given name to create temporary file. In parallel builds it may not work.
...
This time for .s file.
llvm-svn: 121016
2010-12-06 18:04:39 +00:00
Devang Patel
6b5d5b5c3b
Do not try luck by using given name to create temporary file. In parallel builds it may not work.
...
llvm-svn: 120860
2010-12-03 23:58:31 +00:00
Devang Patel
6c814194d6
Disable .loc support on older darwin OSes.
...
llvm-svn: 120747
2010-12-02 23:03:57 +00:00
Tobias Grosser
083379f815
Move check of command line options after command line parsing.
...
The check to not allow -analyze and -disable-output at the same time was done
before parsing the command line flags. Therefore it never triggered, and in case
both options where used opt segfaulted. Fix this by moving this check a after
command line parsing.
llvm-svn: 120732
2010-12-02 20:35:16 +00:00
Devang Patel
85df0ccafd
Add hiddent command line option, as an debugging aid, to disable .loc use.
...
llvm-svn: 120575
2010-12-01 15:36:49 +00:00
Chris Lattner
2907f44a1b
convert llvm-ar and llvm-ranlib to raw_ostream from iostreams.
...
Patch by Danil Malyshev!
llvm-svn: 120341
2010-11-29 23:02:20 +00:00
Charles Davis
54c9eb6fff
Now to chant the magical incantation that will exorcise the System library
...
from LLVM forever:
grep -lR "llvm/System" * | grep -v .svn | xargs sed -ie 's#llvm/System#llvm/Support#g'
llvm-svn: 120314
2010-11-29 19:44:50 +00:00
Michael J. Spencer
ab425d8360
I swear I did a make clean and make before committing all this...
...
llvm-svn: 120304
2010-11-29 18:47:54 +00:00
Michael J. Spencer
447762da85
Merge System into Support.
...
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
NAKAMURA Takumi
638110fde1
tools/Makefile: Don't look into $(TARGET_OS), but $(HOST_OS), to inspect availability of loadable module!
...
The last commit made run.build.step.test_llvm_1 to fail.
llvm-svn: 120283
2010-11-29 08:58:11 +00:00
NAKAMURA Takumi
71c8c12d4d
tools/Makefile: Fix indentation.
...
llvm-svn: 120276
2010-11-29 00:20:34 +00:00
NAKAMURA Takumi
142b32535e
tools/Makefile: Enable building lto, edis and bugpoint-passes on Cygming.
...
bugpoint-passes would be built with ENABLE_SHARED=1.
You could try building gold on Cygming, though, it would fail.
llvm-svn: 120275
2010-11-29 00:20:28 +00:00
Mikhail Glushenkov
c5d7ae4d64
llvmc: First stab at better -march handling.
...
llvm-svn: 120230
2010-11-28 00:31:13 +00:00
Daniel Dunbar
e308b8edab
macho-dump: Add support for --dump-section-data and tweak a few format strings.
...
llvm-svn: 120219
2010-11-27 13:58:16 +00:00
Daniel Dunbar
83224fc391
macho-dump: Add support for dumping symbol table entries.
...
llvm-svn: 120218
2010-11-27 13:52:53 +00:00
Daniel Dunbar
8680ce6ffc
macho-dump: Add support for dumping string table data.
...
llvm-svn: 120217
2010-11-27 13:46:11 +00:00
Daniel Dunbar
0ac77d526d
macho-dump: Add support for dumping relocation entries.
...
llvm-svn: 120216
2010-11-27 13:39:48 +00:00
Daniel Dunbar
5867690cfa
macho-dump: Add support for dumping sections.
...
llvm-svn: 120215
2010-11-27 13:33:15 +00:00
Daniel Dunbar
c983afc5a1
macho-dump: Add support for dumping dysymtab indirect symbol table.
...
llvm-svn: 120214
2010-11-27 13:26:12 +00:00
Daniel Dunbar
33dab2a6ee
macho-dump: Add support for dumping symtab and dysymtab commands.
...
llvm-svn: 120204
2010-11-27 08:33:44 +00:00
Daniel Dunbar
a8070e0284
macho-dump: Add support for dumping segment load commands.
...
llvm-svn: 120203
2010-11-27 08:22:29 +00:00
Daniel Dunbar
3977e7d22c
Object/Mach-O: Add header and load command information.
...
llvm-svn: 120198
2010-11-27 07:19:41 +00:00
Daniel Dunbar
9630fb3c10
macho-dump: More sketching.
...
llvm-svn: 120192
2010-11-27 06:19:17 +00:00
Daniel Dunbar
fdfb635bff
macho-dump: Stub out C++ macho-dump tool.
...
llvm-svn: 120191
2010-11-27 05:58:44 +00:00
Mikhail Glushenkov
abc0204bf6
Add a newline.
...
llvm-svn: 119976
2010-11-22 17:10:20 +00:00
Mikhail Glushenkov
3c60f755c3
llvmc: Make -march/-mcpu/-mtune behaviour more consistent with gcc.
...
llvm-svn: 119975
2010-11-22 17:10:09 +00:00
Wesley Peck
eef03fb444
Make MCJIT work with CMake.
...
llvm-svn: 119589
2010-11-17 23:35:07 +00:00
Daniel Dunbar
7e5d8a765f
MCJIT: Stub out MCJIT implementation, still doesn't do anything useful.
...
llvm-svn: 119509
2010-11-17 16:06:43 +00:00
Daniel Dunbar
70ff8b05e3
lli: Add stub -use-mcjit option, which doesn't currently do anything.
...
llvm-svn: 119508
2010-11-17 16:06:37 +00:00
Chris Lattner
287766075f
fix the autoconf script to detect "has asmprinter"ness of a target by
...
looking for lib/Target/*AsmPrinter.cpp. Fix llvm-config to handle targets
that don't have an explicit AsmPrinter library.
llvm-svn: 119057
2010-11-14 19:10:47 +00:00
Daniel Dunbar
bfd762b9e8
Update CMake.
...
llvm-svn: 118953
2010-11-13 00:28:32 +00:00
Daniel Dunbar
9589bf8a86
lli: Switch to using ParseIRFile, for consistency with other LLVM tools.
...
- Also, switch tests to not using llvm-as. They run 20% faster now, not that it matters.
llvm-svn: 118952
2010-11-13 00:28:01 +00:00
Dan Gohman
7b0c25faf6
Fix some places where error messages were being swallowed.
...
llvm-svn: 118464
2010-11-09 01:13:31 +00:00
Che-Liang Chiou
345b98eddd
Add registry hook for assembly text output
...
llvm-svn: 118394
2010-11-08 02:21:17 +00:00
Mikhail Glushenkov
b8211b80bc
Rename FindExecutable to PrependMainExecutablePath.
...
Makes it more clear that it is just a path manipulation function.
llvm-svn: 118174
2010-11-03 16:14:16 +00:00
Mikhail Glushenkov
189c6c687c
80-col violations, trailing whitespace.
...
llvm-svn: 118173
2010-11-03 16:14:07 +00:00
Jakob Stoklund Olesen
1d73c0e462
Tweak the opt -O2 / opt -O3 inliner thresholds to be the same as llvm-gcc and
...
clang are using.
llvm-svn: 118118
2010-11-02 23:40:28 +00:00
Mikhail Glushenkov
2c3991acf3
GetDLLSuffix: Remove the leading dot from LTDL_SHLIB_EXT.
...
This allows using GetDLLSuffix() with appendSuffix().
llvm-svn: 118051
2010-11-02 20:32:59 +00:00
Mikhail Glushenkov
f26f4a0535
Trailing whitespace.
...
llvm-svn: 118050
2010-11-02 20:32:52 +00:00
Jim Grosbach
685b77332c
Allow specifying a CPU to llvm-mc, so that we can properly set up subtarget
...
feature lists for instruction pattern predicates.
llvm-svn: 117788
2010-10-30 15:57:50 +00:00
Tobias Grosser
ea9dca4c6c
Add polly support to the build system.
...
Update the cmake and autoconf build system to compile polly
as a shared library if it is checked out into tools/polly. In case
polly is not checked out, nothing changes.
This models the way clang can be added to llvm if checked out to tools/clang.
Also rebuild configure.
Patch contributed by ether.
llvm-svn: 117755
2010-10-30 00:54:26 +00:00
Dan Gohman
094da1dc44
Check for (unlikely) errors from FindExecutable.
...
llvm-svn: 117658
2010-10-29 16:18:26 +00:00
Dan Gohman
9e08246040
Fix these error messages to not mention PATH in cases where
...
PATH isn't actually searched, and to not mention the executable
directory when it isn't actually searched.
llvm-svn: 117657
2010-10-29 16:15:23 +00:00
Dan Gohman
a42c78fadb
Delete this obsolete comment.
...
llvm-svn: 117655
2010-10-29 16:03:34 +00:00
NAKAMURA Takumi
a1d4430cc8
tools/llvm-shlib/Makefile: Support for FreeBSD and OpenBSD.
...
Thanks to Yuri Gribov and Vladimir Kirillov!
*BSD(s) have environ(7) in CRT startup and cannot resolve "environ" at linking llvm.so.
environ(7) is used inlib/System/Unix/Program.inc.
llvm-svn: 117528
2010-10-28 06:45:57 +00:00
Daniel Dunbar
1601f55615
llvm-mc: Teach -as-lex to print the raw token string as well.
...
llvm-svn: 117296
2010-10-25 20:18:46 +00:00
Mikhail Glushenkov
e08108af9b
Resurrect mcc16, it is useful as an example.
...
llvm-svn: 117198
2010-10-23 07:33:02 +00:00
Mikhail Glushenkov
e9b78186d4
Syntax tweak in llvmc: (something [a,b,c]) -> (something a, b, c).
...
llvm-svn: 117196
2010-10-23 07:32:46 +00:00
NAKAMURA Takumi
1530487cb1
lli: On Cygwin-1.5, lli crashes at invoking destructors in atexit handler.
...
llvm-svn: 117095
2010-10-22 14:53:59 +00:00
Rafael Espindola
a8a74ece08
Record sysbols created by aliases. Fixes PR8414.
...
llvm-svn: 116910
2010-10-20 04:57:22 +00:00
Tobias Grosser
23c8341c3d
Add RegionPass support.
...
A RegionPass is executed like a LoopPass but on the regions detected by the
RegionInfo pass instead of the loops detected by the LoopInfo pass.
llvm-svn: 116905
2010-10-20 01:54:44 +00:00
Owen Anderson
6c18d1aac0
Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which
...
must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize
the pass's dependencies.
Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.
I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems
with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass
registration/creation, please send the testcase to me directly.
llvm-svn: 116820
2010-10-19 17:21:58 +00:00
Benjamin Kramer
2fcb554f5b
Hack around incompatible pointer warnings.
...
llvm-svn: 116671
2010-10-16 15:43:02 +00:00
Daniel Dunbar
ef47b66d52
lto: Respect LLVM_VERSION_INFO make variable, since setting CC arguments with
...
spaces gives tests fits and shell escaping is an art best left to jabberwockies.
llvm-svn: 116632
2010-10-15 22:46:15 +00:00
Mikhail Glushenkov
11c9edb295
Forward -march correctly.
...
Also includes some cosmetic changes.
llvm-svn: 116475
2010-10-14 11:22:06 +00:00
Rafael Espindola
229e38f0fe
Be more consistent in using ValueToValueMapTy.
...
llvm-svn: 116387
2010-10-13 01:36:30 +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
Dan Gohman
a6769bb993
This file needs ToolOutputFile.h too.
...
llvm-svn: 115976
2010-10-07 20:48:46 +00:00
Dan Gohman
0df7ea4c24
Move tool_output_file into its own file.
...
llvm-svn: 115973
2010-10-07 20:32:40 +00:00
Michael J. Spencer
7713f26045
Fix Whitespace.
...
llvm-svn: 115959
2010-10-07 18:51:10 +00:00
Michael J. Spencer
d12e9d38b4
Fix warnings on Windows.
...
llvm-svn: 115958
2010-10-07 18:50:57 +00:00
Bill Wendling
0198ce06fc
Provide a fast "get me the target triple from the module" API. This can
...
drastically reduce the linking time during LTO.
Patch by Shantonu Sen!
llvm-svn: 115728
2010-10-06 01:22:42 +00:00
Oscar Fuentes
6e0637994a
Stop the build if cyclic library dependecies found.
...
llvm-svn: 115405
2010-10-02 03:04:49 +00:00
Duncan Sands
e9da6db67f
Convert a bunch of uses of 'bytecode' into 'bitcode'. This
...
is not everything, but the remaining cases are less trivial.
llvm-svn: 115080
2010-09-29 20:09:55 +00:00
Bill Wendling
dcd7c2b833
Add a new scope type "LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN" for the
...
"linker_private_weak_auto_def" linkage type for LTO.
llvm-svn: 114868
2010-09-27 20:17:45 +00:00
Bill Wendling
2776d465ee
The "linker_private_weak*" linkages should set the LTO_SYMBOL_DEFINITION_WEAK
...
during LTO.
llvm-svn: 114850
2010-09-27 18:05:19 +00:00
Benjamin Kramer
c758311025
Push twines deeper into SourceMgr's error handling methods.
...
llvm-svn: 114847
2010-09-27 17:42:11 +00:00
Daniel Dunbar
3068a93dc1
MC/Lexer: Add 'Real' token type for floating point literals.
...
llvm-svn: 114718
2010-09-24 01:59:31 +00:00
Dan Gohman
0d2c07cf58
Fix llvm-extract -delete's lazy loading to materialize the functions that
...
will not be deleted, rather than the ones that will.
llvm-svn: 114614
2010-09-23 00:33:13 +00:00
Mikhail Glushenkov
922f13ce2e
llvmc: Support '-emit-llvm -S' with -opt.
...
llvm-svn: 114541
2010-09-22 09:00:41 +00:00
Mikhail Glushenkov
11adecbf75
A more informative output suffix for the opt tool.
...
llvm-svn: 114540
2010-09-22 09:00:35 +00:00
Mikhail Glushenkov
b57e684020
llvmc: split llvm_gcc_based into llvm_gcc_{pch,comp}_based.
...
llvm-svn: 114434
2010-09-21 14:59:47 +00:00
Mikhail Glushenkov
3240ff9302
llvmc: put linker options in a separate OptList.
...
llvm-svn: 114427
2010-09-21 11:57:04 +00:00
Daniel Dunbar
25c2c6293d
llvm-mc: Teach -as-lex to print more token kinds.
...
llvm-svn: 114051
2010-09-16 00:42:35 +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
Dan Gohman
80e85e72b6
Use ParseIRFile to auto-detect LLVM Assembly automatically.
...
llvm-svn: 113765
2010-09-13 18:02:47 +00:00
Michael J. Spencer
dc38d36ccb
CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.
...
llvm-svn: 113632
2010-09-10 21:14:25 +00:00
NAKAMURA Takumi
217cadd434
Don't build redundant libLLVMgold.a.
...
Building archive would be executed due to definition of BUILD_ARCHIVE,
even if BUILD_ARCHIVE = "0".
llvm-svn: 113578
2010-09-10 06:26:57 +00:00
Dan Gohman
6dbbab6895
Discard metadata produced by LLVM 2.7. The value enumeration it used
...
is different from what the code now uses in a two ways: NamedMDNodes
were considered Values and included in the numbering, and the
function-local metadata counter wasn't reset between functions.
The later problem breaks lazy deserialization, so instead of trying
to emulate the old numbering, just drop the old metadata. The only
in-tree use case is debug info with LTO, where the QOI loss is
considered acceptable.
llvm-svn: 113557
2010-09-09 23:12:39 +00:00
Tobias Grosser
011d79aeb2
Execute all Pass Printers even if -quiet is set.
...
Follow the same logic in the LoopPass, ModulePass and CallGraphSCCPass printers,
as it was already used in the BasicBlockPass and FunctionPass printers. This is
more consistent.
The other option would have been to completely disable dumping the analysis
information. However, as this information is the only information printed if the
-analysis flag is set, calling opt would not do anything at all.
llvm-svn: 113360
2010-09-08 15:02:51 +00:00
Tobias Grosser
e5fcde7d1c
Include original pass name in the PassPrinter's name.
...
llvm-svn: 113359
2010-09-08 15:02:47 +00:00
Chris Lattner
accb015f7c
cleanups: mark stuff static, only tagdecls should be in anon namespaces.
...
llvm-svn: 113120
2010-09-05 21:25:43 +00:00
Bill Wendling
cef985bc7e
Quiesce warning about non-virtual d'tor in virtual class.
...
llvm-svn: 112991
2010-09-03 18:41:20 +00:00
Chris Lattner
7f2f0930a7
add a new "llvm-dis -show-annotations" option, which causes it to print
...
#uses comments, with a testcase.
llvm-svn: 112906
2010-09-02 23:21:44 +00:00