Commit Graph

1765 Commits

Author SHA1 Message Date
Nick Lewycky 071e176667 This is not overly conservative.
Some = [10, 2730). A subset of that is [1024..2048) which covers every possible
10-bit pattern.

llvm-svn: 75411
2009-07-12 02:28:40 +00:00
Nick Lewycky 2951c990cd Implement ConstantRange::multiply based on the code in LoopVR.
llvm-svn: 75410
2009-07-12 02:19:05 +00:00
Nick Lewycky fc69ee2cc6 Fix handling of max and full set.
A full set is a constant range that represents any number. If you take the
umax of that and [5, 10) you end up with [5, INT_MAX] because the values less
than 5 would be umax's against a value which is at least 5.

llvm-svn: 75372
2009-07-11 19:22:21 +00:00
Nick Lewycky 17a4fa84ee Break the world's largest unit test down a few logical lines. No semantic
changes.

llvm-svn: 75369
2009-07-11 18:43:20 +00:00
Owen Anderson c490dee828 Fix unit tests.
llvm-svn: 75262
2009-07-10 18:58:29 +00:00
Dan Gohman dc33ae27ed Revert the part of 75177 that split ConstantRange into two classes, and
merge the new functionality and unittests into ConstantRange. Thanks to
Nick Lewycky for pointing out that it isn't necessary to have two separate
classes here.

llvm-svn: 75191
2009-07-09 23:16:10 +00:00
Dan Gohman 5035fbf91c Add a ConstantSignedRange class, which does for signed integers
what ConstantRange does for unsigned integers. Factor out a
common base class for common functionality.

Add some new functions for performing arithmetic on constant
ranges. Some of these are currently just stubbed out with
conservative implementations.

Add unittests for ConstantRange and ConstantSignedRange.

llvm-svn: 75177
2009-07-09 22:07:27 +00:00
Daniel Dunbar 5d8165435d Fix a compile warning.
llvm-svn: 71993
2009-05-18 03:44:24 +00:00
Dan Gohman 745ad4486e Apply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me
to make the copy constructor and destructor protected, and corresponding
adjustments to the unittests.

llvm-svn: 70644
2009-05-02 21:10:48 +00:00
Jeffrey Yasskin 41f2477a50 Add tests for WeakVH and AssertingVH. These pointed out that the overloads for
the comparison operators were not only unnecessary in the presence of the
implicit conversion; they caused ambiguous overload errors. So I deleted them.

llvm-svn: 70243
2009-04-27 20:32:07 +00:00
Chris Lattner abd9bc89c5 Add a new TypeBuilder helper class, which eases making LLVM IR types.
Patch by Jeffrey Yasskin!

llvm-svn: 70084
2009-04-25 22:14:04 +00:00
Bill Wendling 66b3fffa60 Make the constants fit.
llvm-svn: 68258
2009-04-01 22:44:18 +00:00
Misha Brukman 1757a810ce Added tests for math utility functions; fixed another test's header comment.
llvm-svn: 68249
2009-04-01 21:36:40 +00:00
Misha Brukman 5182b758a0 Renamed unittest files to have a consistent {Tt}est suffix.
llvm-svn: 67326
2009-03-19 19:09:48 +00:00
Daniel Dunbar af41991c8f Minimal raw_ostream unit tests
llvm-svn: 67083
2009-03-17 16:14:59 +00:00