| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method
trunc(), to be const and to return a new value instead of modifying the
object in place.
llvm-svn: 121120
|
|
|
|
| |
llvm-svn: 120912
|
|
|
|
|
|
| |
setAllBits(), setBit(unsigned), etc.
llvm-svn: 120564
|
|
|
|
| |
llvm-svn: 120413
|
|
|
|
| |
llvm-svn: 119708
|
|
|
|
| |
llvm-svn: 116462
|
|
|
|
|
|
|
|
|
| |
logic to use the new APInt methods. Among other things this
implements rdar://8501501 - llvm.smul.with.overflow.i32 should constant fold
which comes from "clang -ftrapv", originally brought to my attention from PR8221.
llvm-svn: 116457
|
|
|
|
| |
llvm-svn: 116455
|
|
|
|
|
|
| |
return an overflow flag.
llvm-svn: 116452
|
|
|
|
| |
llvm-svn: 111337
|
|
|
|
| |
llvm-svn: 108366
|
|
|
|
|
|
| |
Evzen Muller!
llvm-svn: 103877
|
|
|
|
|
|
| |
Kees van Reeuwijk for PR6704
llvm-svn: 99677
|
|
|
|
| |
llvm-svn: 99414
|
|
|
|
|
|
|
|
| |
payloads. APFloat's internal folding routines always make QNaNs now,
instead of sometimes making QNaNs and sometimes SNaNs depending on the
type.
llvm-svn: 97364
|
|
|
|
| |
llvm-svn: 95781
|
|
|
|
|
|
| |
as undefined. Fixes an assertion in APFloat::toString noticed by Dale.
llvm-svn: 95196
|
|
|
|
| |
llvm-svn: 92643
|
|
|
|
|
|
| |
order should be immune to such problems.
llvm-svn: 92124
|
|
|
|
| |
llvm-svn: 82355
|
|
|
|
|
|
| |
icc (#177, partial). Patch by Erick Tryzelaar.
llvm-svn: 81106
|
|
|
|
| |
llvm-svn: 79875
|
|
|
|
| |
llvm-svn: 79602
|
|
|
|
|
|
| |
negative checks resemble each other.
llvm-svn: 79595
|
|
|
|
| |
llvm-svn: 79594
|
|
|
|
| |
llvm-svn: 79593
|
|
|
|
| |
llvm-svn: 79592
|
|
|
|
|
|
| |
SmallString::c_str.
llvm-svn: 79456
|
|
|
|
|
|
| |
- Patch by Erick Tryzelaar, with some edits (and a bug fix) from me.
llvm-svn: 78885
|
|
|
|
| |
llvm-svn: 78825
|
|
|
|
|
|
|
|
| |
when !isSingleWord() but getActiveBits() is small,
we were using the pointer value instead of the low
word of the integer value.
llvm-svn: 78821
|
|
|
|
|
|
|
|
|
| |
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").
llvm-svn: 75640
|
|
|
|
| |
llvm-svn: 75451
|
|
|
|
|
|
|
|
|
| |
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
llvm-svn: 75379
|
|
|
|
|
|
| |
in APIntTest.cpp.
llvm-svn: 74550
|
|
|
|
| |
llvm-svn: 74515
|
|
|
|
|
|
|
| |
This will allow it to be used in unittests that use gtest's
EXPECT_EQ.
llvm-svn: 74494
|
|
|
|
| |
llvm-svn: 72235
|
|
|
|
| |
llvm-svn: 71738
|
|
|
|
|
|
| |
class.
llvm-svn: 70488
|
|
|
|
|
|
| |
patch by Jeff Yasskin!
llvm-svn: 70058
|
|
|
|
|
|
|
| |
is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.
llvm-svn: 68227
|
|
|
|
| |
llvm-svn: 67302
|
|
|
|
|
|
|
|
|
|
|
|
| |
large for the testsuite) took over six minutes to compile on my Mac.
The patched LLVM-GCC compiles that testcase in three seconds (GCC
takes less than one second). This hash function is more complex
(about 35 instructions on x86) than what Chris wanted, but I expect it
will be well-behaved with arbitrary inputs.
Thank you to everyone who responded to my previous request for advice.
llvm-svn: 66962
|
|
|
|
|
|
|
|
|
| |
causing assertion failures in getSExtValue().
Fix it by making highWordBits actually contain what its name says,
and add some more unit-tests for APInt.
This fixes PR3419.
llvm-svn: 63107
|
|
|
|
|
|
| |
compatibility with cygwin. Patch by Jay Foad!
llvm-svn: 62695
|
|
|
|
| |
llvm-svn: 62512
|
|
|
|
| |
llvm-svn: 57384
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
and the slow-path cases out of line. This speeds up instcombine
a bit in real world cases. Patch contributed by m-s.
llvm-svn: 55063
|