|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| | debugging some leaks (PR5770 in particular).
llvm-svn: 91713 | 
| | 
| 
| 
| | llvm-svn: 85254 | 
| | 
| 
| 
| | llvm-svn: 84355 | 
| | 
| 
| 
| 
| 
| | same Value without breaking things.
llvm-svn: 83861 | 
| | 
| 
| 
| 
| 
| 
| | where the element is of a basic builtin type.  For example, to get
an i8* use getInt8PtrTy.
llvm-svn: 83379 | 
| | 
| 
| 
| 
| 
| | and makes the API more annoying.  Add a Regex::getNumMatches() method.
llvm-svn: 82877 | 
| | 
| 
| 
| 
| 
| 
| | setenv().  This patch just disables the test rather than getting putenv() to
work.  Thanks to Sandeep Patel for reporting the problem.
llvm-svn: 82797 | 
| | 
| 
| 
| 
| 
| 
| 
| | ; CHECK: movl {{%e[a-z][xi]}}, %eax
or whatever.
llvm-svn: 82717 | 
| | 
| 
| 
| 
| 
| 
| | a trivial unittest would have caught.  This revision also adds the trivial
unittest.
llvm-svn: 82675 | 
| | 
| 
| 
| 
| 
| 
| | - As best I can tell, we have eliminated all the code which used to require a
   larger buffer size.
llvm-svn: 81912 | 
| | 
| 
| 
| 
| 
| 
| 
| | TypeBuilder was using a local static variable to cache its result. This made it
ignore changes in its LLVMContext argument and always return a type constructed
from the argument to the first call.
llvm-svn: 81316 | 
| | 
| 
| 
| | llvm-svn: 81102 | 
| | 
| 
| 
| 
| 
| 
| | equality. Prefer EXPECT_EQ(foo, Full) over EXPECT_TRUE(foo.isFullSet()) because
the former will print out the contents of the constant range that failed.
llvm-svn: 81094 | 
| | 
| 
| 
| 
| 
| 
| 
| | This can break when there are implicit conversions from types raw_ostream
understands but std::ostream doesn't, but it increases the number of cases that
Just Work.
llvm-svn: 81093 | 
| | 
| 
| 
| 
| 
| | implementation.
llvm-svn: 80493 | 
| | 
| 
| 
| 
| 
| 
| | means that raw_ostream no longer has to #include <iosfwd>.  Nothing in llvm
should use raw_os_ostream.h, but llvm-gcc and some unit tests do.
llvm-svn: 79886 | 
| | 
| 
| 
| | llvm-svn: 79879 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | - This also shortens the Format.h implementation, and uses the print buffer
   fully (it was wasting a character).
 - This manifested as llvm-test failures, because one side effect was that
   raw_ostream would write garbage '\x00' values into the output stream if it
   happened that the string was at the end of the buffer. This meant that grep
   would report 'Binary file matches', which meant the silly pattern matching
   llvm-test eventually does would fail. Cute. :)
llvm-svn: 79862 | 
| | 
| 
| 
| 
| 
| | ConstantRange doesn't have an std::ostream inserter anymore.
llvm-svn: 79831 | 
| | 
| 
| 
| | llvm-svn: 79536 | 
| | 
| 
| 
| | llvm-svn: 79454 | 
| | 
| 
| 
| | llvm-svn: 78948 | 
| | 
| 
| 
| 
| 
| | the pointer even if the memory returned from malloc was already aligned.
llvm-svn: 78805 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | http://llvm.org/viewvc/llvm-project?view=rev&revision=78127, I'm changing the
ExecutionEngine's global mappings to hold AssertingVH<const GlobalValue>. That
way, if unregistering a mapping fails to actually unregister it, we'll get an
assert. Running the jit nightly tests didn't uncover any actual instances of
the problem.
This also uncovered the fact that AssertingVH<const X> didn't work, so I fixed
that too.
llvm-svn: 78400 | 
| | 
| 
| 
| | llvm-svn: 78260 | 
| | 
| 
| 
| | llvm-svn: 77730 | 
| | 
| 
| 
| 
| 
| 
| 
| | change back are
metadata related, which I'm waiting on to avoid conflicting with Devang.
llvm-svn: 77721 | 
| | 
| 
| 
| | llvm-svn: 77516 | 
| | 
| 
| 
| 
| 
| | values.  Hopefully this fixes PR4622.
llvm-svn: 77088 | 
| | 
| 
| 
| 
| 
| | thanks to contexts-on-types.  More to come.
llvm-svn: 77011 | 
| | 
| 
| 
| 
| 
| | an off-by-one error.
llvm-svn: 76891 | 
| | 
| 
| 
| 
| 
| | build failure involving memset.
llvm-svn: 76838 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | malloc, so there should be no functional changes to other code.
These changes are necessary since I have plans to use this allocator in the JIT
memory manager, and it needs a special allocator.
I also added some tests which helped me pinpoint some bugs.
llvm-svn: 76825 | 
| | 
| 
| 
| | llvm-svn: 76744 | 
| | 
| 
| 
| 
| 
| 
| | return the smallest union of two ranges instead of just any range that happens
to contain the union.
llvm-svn: 76360 | 
| | 
| 
| 
| 
| 
| 
| 
| | all values belonging to the intersection will belong to the resulting range.
The former was inconsistent about that point (either way is fine, just pick
one.) This is part of PR4545.
llvm-svn: 76289 | 
| | 
| 
| 
| | llvm-svn: 75703 | 
| | 
| 
| 
| 
| 
| | again to Daniel Dunbar and KLEE!
llvm-svn: 75449 | 
| | 
| 
| 
| 
| 
| | Found by Daniel Dunbar and KLEE.
llvm-svn: 75448 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | Constants.cpp and ConstantFold.cpp.
This involves temporarily hard wiring some parts to use the global context.  This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.
llvm-svn: 75445 | 
| | 
| 
| 
| 
| 
| | generally return Full on all wrapped inputs. "Fixes" PR4545.
llvm-svn: 75444 | 
| | 
| 
| 
| 
| 
| 
| | large as the full set, only those one size smaller. Thanks to Daniel Dunbar
who found this bug using Klee!
llvm-svn: 75443 | 
| | 
| 
| 
| | llvm-svn: 75413 | 
| | 
| 
| 
| 
| 
| 
| | Some = [10, 2730). A subset of that is [1024..2048) which covers every possible
10-bit pattern.
llvm-svn: 75411 | 
| | 
| 
| 
| | llvm-svn: 75410 | 
| | 
| 
| 
| 
| 
| 
| 
| | 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 | 
| | 
| 
| 
| 
| 
| | changes.
llvm-svn: 75369 | 
| | 
| 
| 
| | llvm-svn: 75262 | 
| | 
| 
| 
| 
| 
| 
| 
| | 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 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | 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 |