Commit Graph

1961 Commits

Author SHA1 Message Date
Ted Kremenek c6298de211 Added quotes around $(NM_PATH) argument to GenLibDeps.pl script so that
the "-p" option is actually seen by nm (it was being dropped as it was
considered as separate argument to the Perl script).

llvm-svn: 44365
2007-11-27 17:53:54 +00:00
Duncan Sands ad0ea2d430 Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.

llvm-svn: 44359
2007-11-27 13:23:08 +00:00
Nick Lewycky c6243020a6 Allow the block extractor take to take a list of basic blocks to not extract
from a file containing Function/BasicBlock pairings. This is not safe against
anonymous or abnormally-named Funcs or BBs.

Make bugpoint use this interface to pass the BBs list to the child bugpoint.

llvm-svn: 44101
2007-11-14 06:47:06 +00:00
Chris Lattner 07328f0b8b Make llvm2cpp better, patch for PR1794, contributed by Zack Rusin.
llvm-svn: 44051
2007-11-13 18:22:33 +00:00
Gordon Henriksen 2ed067a0d9 Deleting redundant copy of block extractor pass. See also PR1775.
llvm-svn: 43694
2007-11-05 01:54:05 +00:00
Chris Lattner 4c9ec1aaa2 Fix PR1739.
llvm-svn: 43286
2007-10-24 04:35:54 +00:00
Chris Lattner fee916334a add a 'don't use me' marker.
llvm-svn: 43226
2007-10-22 19:41:46 +00:00
Gordon Henriksen ef5d08f4ea Switching TargetMachineRegistry to use the new generic Registry.
llvm-svn: 43094
2007-10-17 21:28:48 +00:00
Dan Gohman a8656d4798 Fix a typo in a comment.
llvm-svn: 43016
2007-10-15 21:10:03 +00:00
Dan Gohman 2c6a821fd7 Move the space in overview output for commands out of each of the
commands and into the common code.

llvm-svn: 42752
2007-10-08 15:45:12 +00:00
Dale Johannesen 6bf69ed3cc minor long double related changes
llvm-svn: 42439
2007-09-28 18:06:58 +00:00
Dale Johannesen 028084efe5 Revise previous patch per review comments.
Next round of x87 long double stuff.
Getting close now, basically works.

llvm-svn: 41875
2007-09-12 03:30:33 +00:00
Dale Johannesen 245dceb06d Add APInt interfaces to APFloat (allows directly
access to bits).  Use them in place of float and
double interfaces where appropriate.
First bits of x86 long double constants handling 
(untested, probably does not work).

llvm-svn: 41858
2007-09-11 18:32:33 +00:00
Owen Anderson 4266bb73e8 Turn GVN on by default.
llvm-svn: 41787
2007-09-08 22:23:52 +00:00
Dale Johannesen 9e70086c8f Apply feedback from previous patch.
llvm-svn: 41774
2007-09-07 21:07:57 +00:00
Dale Johannesen bed9dc423c Next round of APFloat changes.
Use APFloat in UpgradeParser and AsmParser.
Change all references to ConstantFP to use the
APFloat interface rather than double.  Remove
the ConstantFP double interfaces.
Use APFloat functions for constant folding arithmetic
and comparisons.
(There are still way too many places APFloat is
just a wrapper around host float/double, but we're
getting there.)

llvm-svn: 41747
2007-09-06 18:13:44 +00:00
Devang Patel 42e2abe0e8 Enable loop index split pass.
llvm-svn: 41714
2007-09-04 20:46:58 +00:00
David Greene 85948d7474 Update generated files.
llvm-svn: 41706
2007-09-04 18:46:50 +00:00
David Greene 9bf8760a52 Revert this because the interface hasn't been updated yet.
llvm-svn: 41703
2007-09-04 17:15:07 +00:00
David Greene 4f4dc729d4 Fix typo.
llvm-svn: 41702
2007-09-04 17:00:44 +00:00
David Greene c656cbb8c2 Update GEP constructors to use an iterator interface to fix
GLIBCXX_DEBUG issues.

llvm-svn: 41697
2007-09-04 15:46:09 +00:00
David Greene 703623d571 Update InvokeInst to work like CallInst
llvm-svn: 41506
2007-08-27 19:04:21 +00:00
David Greene 87e2554df4 Update .cvs file
llvm-svn: 41106
2007-08-15 17:58:51 +00:00
Reid Spencer 7c38b0dc15 Don't build llvm-stub twice.
llvm-svn: 41039
2007-08-13 00:25:47 +00:00
Reid Spencer fd46badca5 Separate program name from error message with a :
llvm-svn: 40945
2007-08-08 21:19:01 +00:00
Reid Spencer f054db3242 Terminate an error message with a newline.
llvm-svn: 40943
2007-08-08 21:17:59 +00:00
David Greene c600d65e2b Make this code more efficient
llvm-svn: 40899
2007-08-07 16:57:55 +00:00
Chandler Carruth 450f95c857 Regenerating.
llvm-svn: 40808
2007-08-04 01:56:21 +00:00
Chandler Carruth 7132e00de7 This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.

llvm-svn: 40807
2007-08-04 01:51:18 +00:00
Reid Spencer e621b07e5e Adjust for new CallInst constructor interface.
This fixes test/Feature/llvm2cpp.ll

llvm-svn: 40714
2007-08-02 03:30:26 +00:00
Owen Anderson 10e52eddb3 Rename FastDSE to just DSE.
llvm-svn: 40668
2007-08-01 06:36:51 +00:00
David Greene c8e6508572 Update generated files.
llvm-svn: 40663
2007-08-01 03:59:32 +00:00
David Greene 17a5dfe6f7 New CallInst interface to address GLIBCXX_DEBUG errors caused by
indexing an empty std::vector.

Updates to all clients.

llvm-svn: 40660
2007-08-01 03:43:44 +00:00
Dan Gohman 070a3f94a2 Remove a FIXME comment that wasn't removed when the code it accompanied
was removed.

llvm-svn: 40591
2007-07-30 15:01:09 +00:00
Reid Spencer ec5058eb96 Remove dead option.
llvm-svn: 40415
2007-07-23 04:23:32 +00:00
Reid Spencer c49a5b9952 Fix a sys::Path API error caught by a gcc 4.2 warning.
llvm-svn: 39995
2007-07-18 05:27:33 +00:00
Owen Anderson a603a80607 Turn on FastDSE by default.
Note: FastDSE now equals or exceeds the results of old DSE on all of SPEC2000 and SPEC2006. Unless major problems
show up in the testers, it will likely completely replace old DSE in the near future.

llvm-svn: 39986
2007-07-17 21:59:21 +00:00
Evan Cheng bd9b21f1c5 Change sroa threshold back.
llvm-svn: 39980
2007-07-17 20:07:21 +00:00
Evan Cheng 20b76421ed Temporarily set SROA threshold to 512.
llvm-svn: 39950
2007-07-17 01:52:05 +00:00
Anton Korobeynikov d9625399fb Emit correct linkage. Patch by Roman Samoilov.
llvm-svn: 39751
2007-07-11 19:51:06 +00:00
Reid Spencer 0818f7dbf9 Simplify the handling of the --*flags options. The makefile already gets it
right so there is no need to duplicate logic, just use the values the makefile
provides. 

Eliminate some redundnt -D options from the output.

Fix the help output so it fits on 80 cols.

llvm-svn: 38488
2007-07-10 07:48:09 +00:00
Reid Spencer 1da59dd6dd Makesure the -cppflags also uses the CPP.BaseFlags as the CPP.Defines only
contains some of the defines but not all CPP flags.

llvm-svn: 38487
2007-07-10 07:21:34 +00:00
Gabor Greif 24027b584f finishing touches of bytecode -> bitcode changes. also unbreak Windows
llvm-svn: 37950
2007-07-06 20:28:40 +00:00
Gabor Greif 3d3fc3296e eliminate residual cruft related to recognizing bytecode
files.
bitcode files are the only LLVM format left.

llvm-svn: 37945
2007-07-06 13:38:17 +00:00
Chris Lattner 622178dfc1 update the .cvs files.
llvm-svn: 37919
2007-07-05 17:27:31 +00:00
Gabor Greif e16561cd5d Here is the bulk of the sanitizing.
Almost all occurrences of "bytecode" in the sources have been eliminated.

llvm-svn: 37913
2007-07-05 17:07:56 +00:00
Devang Patel f5a15dd9da Fix PR1539. Add LoopPassPrinter.
llvm-svn: 37909
2007-07-05 15:32:03 +00:00
Gabor Greif 0e535c3c8e Pretty straightforward replacement of "bytecode" by "bitcode"
performed on tools/ first, in order not to cause lethal damage

llvm-svn: 37877
2007-07-04 21:55:50 +00:00
John Criswell 2660cef6d7 Convert .cvsignore files
llvm-svn: 37801
2007-06-29 16:35:07 +00:00
Devang Patel 9a259a20b3 Fix PR 1526.
llvm-svn: 37780
2007-06-28 23:09:25 +00:00
David Greene cbc8ddf81a Add support for building with _GLIBCXX_DEBUG. New configure option
--enable-expensive-checks allows the developer to enable runtime
checking that can greatly increase compile time.  Currently it only
turns on _GLIBCXX_DEBUG.  Other expensive debugging checks added later
should be controlled by this configure option.

This patch also updates llvm-config with a --cppflags option to inform
llvm-gcc how to build itself so that it is compatible with an llvm that
was built with _GLIBCXX_DEBUG.

llvm-svn: 37777
2007-06-28 19:36:08 +00:00
Lauro Ramos Venancio ed95f7fcb3 llvm-nm must print the alias symbols.
llvm-svn: 37766
2007-06-27 22:08:09 +00:00
Reid Spencer 36d4c07500 Fix PR1525:
Use a better determinator for identifying constant array initializers that
are or are not zero terminated and generate code appropriately.

llvm-svn: 37720
2007-06-25 16:45:54 +00:00
Chris Lattner cd74c3ea7c Fix pr1448
llvm-svn: 37658
2007-06-19 16:46:48 +00:00
Reid Spencer 1aae9e8e12 Fix PR1517:
Use SmallPtrSet instead of std::vector to eliminate duplicate uses in a
function generated with -gen-function. This prevents the output from having
multiple duplicate declarations of constants and gvals.

llvm-svn: 37616
2007-06-16 20:48:27 +00:00
Reid Spencer 83c15f8a1b Fix PR1516:
When printing the uses of a function (-gen-function only), make sure to
include the constants referenced by intializers of global variables.

llvm-svn: 37615
2007-06-16 20:33:24 +00:00
Nick Lewycky 7aa84fe7c5 Call the correct function name. Patch from Stephane Letz.
llvm-svn: 37614
2007-06-16 16:17:35 +00:00
Lauro Ramos Venancio f04823af30 Fix bugpoint to run -llc-safe with -Xlinker.
llvm-svn: 37483
2007-06-06 23:10:56 +00:00
Chris Lattner e7a1a4c889 if internalize is disabled, don't run the pass at all!
llvm-svn: 37477
2007-06-06 20:51:14 +00:00
Zhou Sheng 2444a9adeb Commit first round work of PR1373. "noalias" is now fully supported in
VMCore, BitCode, and Assembly. Documentation and test case paramattrs.ll
updated also.

llvm-svn: 37432
2007-06-05 05:28:26 +00:00
Reid Spencer ac1c2d93f1 Regenerate.
llvm-svn: 37207
2007-05-18 05:48:07 +00:00
Reid Spencer c32d55e17c Initialize variable to null so it has a value in the off chance that a
memory buffer couldn't be allocated.

llvm-svn: 36904
2007-05-07 18:50:07 +00:00
Chris Lattner 9e9a34c6bf use the new MemoryBuffer interfaces to simplify error reporting in clients.
llvm-svn: 36900
2007-05-06 23:45:49 +00:00
Chris Lattner 05be1d44da remove dead option
llvm-svn: 36898
2007-05-06 23:24:42 +00:00
Chris Lattner 69a1f813a2 Fix a buggy conversion from bytecode to bitcode
llvm-svn: 36883
2007-05-06 19:43:09 +00:00
Chris Lattner 9b4a428978 make sure the ofstream for opt's output file is destroyed, so that the bits
actually land on disk.

llvm-svn: 36877
2007-05-06 19:17:23 +00:00
Chris Lattner f5599efb00 switch tools to bitcode from bytecode
llvm-svn: 36872
2007-05-06 09:32:02 +00:00
Chris Lattner 6d80e21a1d switch tools to bitcode instead of bytecode
llvm-svn: 36868
2007-05-06 09:29:57 +00:00
Chris Lattner 8279f7e3c2 this doesn't directly depend on bytecode
llvm-svn: 36854
2007-05-06 05:58:00 +00:00
Chris Lattner e542042f8d add bitcode support.
llvm-svn: 36853
2007-05-06 05:56:58 +00:00
Chris Lattner b52f3aac73 archive library already depends on bc reader
llvm-svn: 36852
2007-05-06 05:53:02 +00:00
Chris Lattner e74845f075 add bitcode support, optimize reading to not read all function bodies just
to get deplibs

llvm-svn: 36851
2007-05-06 05:51:37 +00:00
Chris Lattner 957d090ed1 use an auto_ptr to avoid an explicit delete
llvm-svn: 36850
2007-05-06 05:47:36 +00:00
Chris Lattner f6dd4d7fca add bitcode support
llvm-svn: 36849
2007-05-06 05:47:06 +00:00
Chris Lattner adc9e30a72 Remove the -emit-bytecode option. Noone in the llvm tree uses it, and this
keeps llvm-upgrade a simple "source to source" tool.

llvm-svn: 36848
2007-05-06 05:40:41 +00:00
Chris Lattner ef8f389e08 add bitcode reading support to llvm-nm
llvm-svn: 36847
2007-05-06 05:36:18 +00:00
Chris Lattner 99016c3f2d bitcodify, remove eh cruft
llvm-svn: 36844
2007-05-06 05:21:42 +00:00
Chris Lattner cdda3a4ae5 debugger depends on bcreader, not llvm-db
llvm-svn: 36842
2007-05-06 05:18:37 +00:00
Chris Lattner 27936994bd remove EH cruft, add bitcode support
llvm-svn: 36841
2007-05-06 05:13:17 +00:00
Chris Lattner 2785bdbefd add bitcode reading support, remove eh stuff
llvm-svn: 36840
2007-05-06 04:58:26 +00:00
Chris Lattner 6dd290ad3d add bitcode reading support. Remove EH cruft.
llvm-svn: 36839
2007-05-06 04:55:19 +00:00
Chris Lattner 6147489a09 bitcodify
llvm-svn: 36838
2007-05-06 04:49:55 +00:00
Chris Lattner f693167d68 simplify code
llvm-svn: 36837
2007-05-06 04:43:36 +00:00
Chris Lattner c424ba7ebd add support to llvm-prof for reading from a bitcode file
llvm-svn: 36836
2007-05-06 04:43:00 +00:00
Chris Lattner 0f49a6fe89 if -bitcode is specified, read and write a bitcode file instead of a bytecode file.
llvm-svn: 36830
2007-05-06 02:42:03 +00:00
Chris Lattner 19f599471c add inline asm code
llvm-svn: 36826
2007-05-06 01:50:11 +00:00
Chris Lattner f25f710c4d add a denser encoding for null terminated strings, add a 6-bit abbrev as
well.  This shrinks kc++ from 2724088 to 2717360 bytes.

llvm-svn: 36821
2007-05-06 00:53:07 +00:00
Chris Lattner 4a7ac9fd70 emit spiffy little histograms of codes, if enabled. Don't print averages if
there is only one item.

llvm-svn: 36773
2007-05-05 01:46:49 +00:00
Chris Lattner 9e808cd330 do not charge subblock sizes to the parent block.
llvm-svn: 36772
2007-05-05 01:29:31 +00:00
Chris Lattner 9181ddf91d update to new APIs, make output a bit (haha) nicer
llvm-svn: 36768
2007-05-05 00:17:42 +00:00
Chris Lattner 0b7c5121f7 add support for new codes/block
llvm-svn: 36726
2007-05-04 03:01:41 +00:00
Evan Cheng 779b52e4c4 Added -rsh-host and -rsh-user to support remote execution.
llvm-svn: 36685
2007-05-03 18:36:15 +00:00
Devang Patel 8c78a0bff0 Drop 'const'
llvm-svn: 36662
2007-05-03 01:11:54 +00:00
Devang Patel e95c6ad802 Use 'static const char' instead of 'static const int'.
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.

llvm-svn: 36652
2007-05-02 21:39:20 +00:00
Devang Patel 09f162ca6a Do not use typeinfo to identify pass in pass manager.
llvm-svn: 36632
2007-05-01 21:15:47 +00:00
Chris Lattner 5fab65dbbf add phi
llvm-svn: 36611
2007-05-01 02:43:46 +00:00
Reid Spencer 986b9df04e Augment the verbose output to print out the sub-commands executed.
llvm-svn: 36581
2007-04-29 23:59:47 +00:00
Chris Lattner 3543caacd3 Implement much expanded dumper support. We now print stuff like:
<MODULE_BLOCK NumWords=27 BlockCodeSize=3>
  <TYPE_BLOCK NumWords=7 BlockCodeSize=4>
    <NUMENTRY op0=7>
    <POINTER op0=1>
    <FUNCTION op0=0 op1=2 op2=2 op3=2 op4=2>
    <VECTOR op0=2 op1=3>
    <INTEGER op0=64>
    <VECTOR op0=8 op1=5>
    <INTEGER op0=16>
    <VOID>
...

With work, the operands can be pretty printed symbolically.

llvm-svn: 36579
2007-04-29 21:48:19 +00:00
Chris Lattner 1684cee5a2 add some simple per-block statistics
llvm-svn: 36576
2007-04-29 20:00:02 +00:00
Chris Lattner ca0ea543f5 Implement support to read an arbitrary bitcode file. Next up, dumping the
file symbolically and actually computing statistics.

llvm-svn: 36557
2007-04-29 08:31:14 +00:00