Commit Graph

370 Commits

Author SHA1 Message Date
Chris Lattner
fa829be4d3 Start using the new and improve interface to FunctionType arguments
llvm-svn: 11224
2004-02-09 04:14:01 +00:00
Chris Lattner
85195147e1 vi failed me again. :)
llvm-svn: 11206
2004-02-08 21:52:30 +00:00
Chris Lattner
144f0efd4c Rename the invoke 'except' destination to the 'unwind' destination
llvm-svn: 11205
2004-02-08 21:52:04 +00:00
Chris Lattner
fae8ab3088 rename the "exceptional" destination of an invoke instruction to the 'unwind' dest
llvm-svn: 11202
2004-02-08 21:44:31 +00:00
Chris Lattner
c70b3f63cc SlotCalculator.h moved
llvm-svn: 10931
2004-01-20 19:50:34 +00:00
Chris Lattner
f78819d9ad Eliminate special case handling for CPR's
Fix some problem cases where I was building the slot calculator in bytecode
writer mode instead of asmwriter mode.

llvm-svn: 10911
2004-01-18 21:03:06 +00:00
Chris Lattner
6089bb1f19 The only clients of the slot calculator are now the asmwriter and bcwriter.
Since this really only makes sense for these two, change hte instance variable
to reflect whether we are writing a bytecode file or not.  This makes it
reasonable to add bcwriter specific stuff to it as necessary.

llvm-svn: 10837
2004-01-14 02:49:34 +00:00
Chris Lattner
189d19fb04 Finegrainify namespacification
llvm-svn: 10131
2003-11-21 20:23:48 +00:00
Chris Lattner
2447ef59c4 Don't crash if we are printing an orphaned basic block!
llvm-svn: 10100
2003-11-20 00:09:43 +00:00
Chris Lattner
c96e96b26d Be a bit more tolerant of broken code
llvm-svn: 10050
2003-11-17 01:17:04 +00:00
Brian Gaeke
fda1f1835b When you hand WriteAsOperand a type, it now prints out its symbolic name.
llvm-svn: 10042
2003-11-16 23:08:27 +00:00
Chris Lattner
00211f1d80 Don't print 'No predecessors!' on the entry block
llvm-svn: 10038
2003-11-16 22:59:57 +00:00
Brian Gaeke
960707c335 Put all LLVM code into the llvm namespace, as per bug 109.
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Chris Lattner
da8571b464 Add an assertion
llvm-svn: 9831
2003-11-09 15:51:07 +00:00
Chris Lattner
8339f7d379 Make use of the new AssemblyAnnotationWriter interface
llvm-svn: 9619
2003-10-30 23:41:03 +00:00
Chris Lattner
f14ead9210 Print the names of more opaque types
llvm-svn: 9598
2003-10-30 00:22:33 +00:00
Chris Lattner
92d60539c8 Make sure to print opaque types names if they are available.
llvm-svn: 9597
2003-10-30 00:12:51 +00:00
John Criswell
482202a601 Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.

llvm-svn: 9298
2003-10-20 19:43:21 +00:00
Chris Lattner
5b33748497 Add support for the new varargs intrinsics and instructions
llvm-svn: 9226
2003-10-18 05:57:43 +00:00
Alkis Evlogimenos
8faf8d93d5 Eliminate some extraneous code in SlotCalculator::insertVal().
Rename SlotCalculator::getValSlot() to SlotCalculator::getSlot(),
       SlotCalculator::insertValue() to SlotCalculator::getOrCreateSlot(),
       SlotCalculator::insertVal() to SlotCalculator::insertValue(), and
       SlotCalculator::doInsertVal() to SlotCalculator::doInsertValue().

llvm-svn: 9190
2003-10-17 02:02:40 +00:00
Chris Lattner
068ad84038 Add support for 'weak' linkage.
llvm-svn: 9171
2003-10-16 18:29:00 +00:00
Misha Brukman
fa100531e1 Fix spelling/grammar.
llvm-svn: 9023
2003-10-10 17:54:14 +00:00
Chris Lattner
504f9242c3 Add support for volatile loads/stores
llvm-svn: 8393
2003-09-08 17:45:59 +00:00
Chris Lattner
13651f0c46 Fix bug where we couldn't print a function without a name
llvm-svn: 8341
2003-09-03 17:56:43 +00:00
Chris Lattner
8068e0cd17 Support new 'any' support for pointer size and endianness
llvm-svn: 8119
2003-08-24 13:48:48 +00:00
Chris Lattner
1c3430491e If an "LLVM name" has wierd characters in it, print it out in double quotes instead of prefixing it with %
llvm-svn: 8049
2003-08-22 05:40:38 +00:00
Chris Lattner
463d6a5e7c Implement TODO: print out short form of Invoke if possible
llvm-svn: 7595
2003-08-05 15:34:45 +00:00
Chris Lattner
f26a8ee580 Remove redundant const qualifiers from cast<> expressions
llvm-svn: 7253
2003-07-23 15:30:06 +00:00
Chris Lattner
6077c3195f Simplify code by using ConstantInt::getRawValue instead of checking to see
whether the constant is signed or unsigned, then casting

llvm-svn: 7252
2003-07-23 15:22:26 +00:00
Misha Brukman
7fdaab4f68 The word separate' only has one e'.
llvm-svn: 7173
2003-07-14 17:20:40 +00:00
Chris Lattner
d401f39872 Avoid printing out huge structures or arrays if they are just filled with zeros
llvm-svn: 6938
2003-06-28 20:08:24 +00:00
Brian Gaeke
87b4f0765c lib/CWriter/Writer.cpp: Copy AsmWriter's ConstantFP checking code here
into a new function FPCSafeToPrint(), and use it in printConstant()
and printFunction() to decide whether we should output ConstantFPs as
floating-point constants or as references to stack-allocated variables.

lib/VMCore/AsmWriter.cpp: Fix an apparent typo in the code mentioned above.

llvm-svn: 6762
2003-06-17 23:55:35 +00:00
Chris Lattner
39adbfca5b Don't print out unique identifier for opaque types
llvm-svn: 6511
2003-06-01 03:45:51 +00:00
Chris Lattner
15285abcbe Print opaque types
llvm-svn: 6200
2003-05-14 17:50:47 +00:00
Chris Lattner
f70da10697 Add support for the new va_arg instruction
llvm-svn: 6029
2003-05-08 02:44:12 +00:00
Chris Lattner
ab7d1ab806 Remove using declarations
llvm-svn: 6022
2003-05-08 02:08:14 +00:00
Chris Lattner
c840aa64e2 Emit information about target
llvm-svn: 5844
2003-04-22 19:07:19 +00:00
Chris Lattner
379a8d2d1c Add new linkage types to support a real frontend
llvm-svn: 5786
2003-04-16 20:28:45 +00:00
Chris Lattner
deccfafddb Improve the efficiency and cleanup writing a bit
llvm-svn: 5782
2003-04-16 20:20:02 +00:00
Chris Lattner
b825722ac0 Clean up cruft
llvm-svn: 5720
2003-03-06 23:23:32 +00:00
Chris Lattner
98cf1f5d64 - Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.

llvm-svn: 4779
2002-11-20 18:36:02 +00:00
Chris Lattner
149376dee5 - Change Function's so that their argument list is populated when they are
constructed.  Before, external functions would have an empty argument list,
    now a Function ALWAYS has a populated argument list.

llvm-svn: 4149
2002-10-13 20:57:00 +00:00
Chris Lattner
d131986b0f Global variables are now external if they don't have initializers, not
"uninitialized"

llvm-svn: 4052
2002-10-06 22:48:09 +00:00
Chris Lattner
58185f2df9 - Print the predecessors of a basic block instead of the number of uses of
the block in the AsmWriter

llvm-svn: 4019
2002-10-02 19:38:55 +00:00
Chris Lattner
7d734801d1 Add support for printing constpointerrefs more nicely
llvm-svn: 3654
2002-09-10 15:53:49 +00:00
Chris Lattner
cfe8f53a4b Changed parser to always use parenthesis on ConstExprs to be consistent
llvm-svn: 3363
2002-08-16 21:17:11 +00:00
Chris Lattner
83b396b830 Write constexpr casts using the cast X to Y notation, not using the implicit
type result

llvm-svn: 3354
2002-08-15 19:37:43 +00:00
Chris Lattner
e5fd3867d3 Fix bug: test/Regression/Assembler/2002-07-31-SlashInString.llx
llvm-svn: 3195
2002-07-31 23:56:44 +00:00
Chris Lattner
3cd8c56cbb Cleanup ConstantExpr handling:
* Correctly delete TypeHandles in AsmParser.  In addition to not leaking
   memory, this prevents a bug that could have occurred when a type got
   resolved that the constexpr was using
 * Check for errors in the AsmParser instead of hitting assertion failures
   deep in the code
 * Simplify the interface to the ConstantExpr class, removing unneccesary
   parameters to the ::get* methods.
 * Rename the 'getelementptr' version of ConstantExpr::get to
   ConstantExpr::getGetElementPtr

llvm-svn: 3161
2002-07-30 18:54:25 +00:00
Chris Lattner
c8b7092e54 * Add support for different "PassType's"
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Add support for different "PassType's"
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Remove getPassName implementations from various subclasses

llvm-svn: 3113
2002-07-26 21:12:46 +00:00