|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| | llvm-svn: 55779 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | use raw_ostream instead of std::ostream.  Among other goodness,
this speeds up llvm-dis of kc++ with a release build from 0.85s
to 0.49s (88% faster).
Other interesting changes:
 1) This makes Value::print be non-virtual.
 2) AP[S]Int and ConstantRange can no longer print to ostream directly, 
    use raw_ostream instead.
 3) This fixes a bug in raw_os_ostream where it didn't flush itself 
    when destroyed.
 4) This adds a new SDNode::print method, instead of only allowing "dump".
A lot of APIs have both std::ostream and raw_ostream versions, it would
be useful to go through and systematically anihilate the std::ostream 
versions.
This passes dejagnu, but there may be minor fallout, plz let me know if
so and I'll fix it.
llvm-svn: 55263 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | returning an std::string by value, it fills in a SmallString/SmallVector
passed in.  This significantly reduces string thrashing in some cases.
More specifically, this:
 - Adds an operator<< and a print method for APInt that allows you to 
   directly send them to an ostream.
 - Reimplements APInt::toString to be much simpler and more efficient
   algorithmically in addition to not thrashing strings quite as much.
This speeds up llvm-dis on kc++ by 7%, and may also slightly speed up the
asmprinter.  This also fixes a bug I introduced into the asmwriter in a
previous patch w.r.t. alias printing.
llvm-svn: 54873 | 
| | 
| 
| 
| 
| 
| | Legacy interfaces will be in place for some time.  (Merge from use-diet branch.)
llvm-svn: 51200 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | address of the PassInfo directly instead of calling getPassInfo.
This eliminates a bunch of dynamic initializations of static data.
Also, fold RegisterPassBase into PassInfo, make a bunch of its
data members const, and rearrange some code to initialize data
members in constructors instead of using setter member functions.
llvm-svn: 51022 | 
| | 
| 
| 
| 
| 
| 
| | several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017 | 
| | 
| 
| 
| 
| 
| 
| 
| | Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.
llvm-svn: 49277 | 
| | 
| 
| 
| 
| 
| | which is long dead by now.
llvm-svn: 47323 | 
| | 
| 
| 
| | llvm-svn: 45418 | 
| | 
| 
| 
| | llvm-svn: 45101 | 
| | 
| 
| 
| 
| 
| | Also cleaned up some comments in source files.
llvm-svn: 43674 | 
| | 
| 
| 
| | llvm-svn: 43652 | 
| | 
| 
| 
| | llvm-svn: 43651 | 
| | 
| 
| 
| | llvm-svn: 36873 | 
| | 
| 
| 
| | llvm-svn: 36662 | 
| | 
| 
| 
| 
| 
| 
| | Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
llvm-svn: 36652 | 
| | 
| 
| 
| | llvm-svn: 36632 | 
| | 
| 
| 
| | llvm-svn: 36205 | 
| | 
| 
| 
| 
| 
| | target for tabs checking.
llvm-svn: 36146 | 
| | 
| 
| 
| 
| 
| 
| 
| | reserved and
can collide with system defined names.  Windows defines _BB, for example.
llvm-svn: 35066 | 
| | 
| 
| 
| | llvm-svn: 35057 | 
| | 
| 
| 
| | llvm-svn: 34856 | 
| | 
| 
| 
| 
| 
| | 2. Make sure debug output of APInt values is safe for all bit widths.
llvm-svn: 34855 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | This patch replaces signed integer types with signless ones:
1. [US]Byte -> Int8
2. [U]Short -> Int16
3. [U]Int   -> Int32
4. [U]Long  -> Int64.
5. Removal of isSigned, isUnsigned, getSignedVersion, getUnsignedVersion
   and other methods related to signedness. In a few places this warranted
   identifying the signedness information from other sources.
llvm-svn: 32785 | 
| | 
| 
| 
| 
| 
| 
| 
| | This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.
llvm-svn: 32751 | 
| | 
| 
| 
| 
| 
| | delete some dead ones.
llvm-svn: 32694 | 
| | 
| 
| 
| 
| 
| 
| | rework the hacks that had us passing OStream in. We pass in std::ostream*
instead, check for null, and then dispatch to the correct print() method.
llvm-svn: 32636 | 
| | 
| 
| 
| 
| 
| | now cerr, cout, and NullStream resp.
llvm-svn: 32298 | 
| | 
| 
| 
| 
| 
| | is 'unsigned'.
llvm-svn: 32279 | 
| | 
| 
| 
| | llvm-svn: 31925 | 
| | 
| 
| 
| 
| 
| 
| 
| | This patch implements the first increment for the Signless Types feature.
All changes pertain to removing the ConstantSInt and ConstantUInt classes
in favor of just using ConstantInt.
llvm-svn: 31063 | 
| | 
| 
| 
| | llvm-svn: 29925 | 
| | 
| 
| 
| | llvm-svn: 29911 | 
|  | llvm-svn: 29324 |