| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I will remove the isBigEndianHost function once I update clang.
The ifdef logic is designed to
* not use configure/cmake to avoid breaking -arch i686 -arch ppc.
* default to little endian
* be as small as possible
It looks like sys/endian.h is the preferred header on most modern BSD systems,
but it is better to change this in a followup patch as machine/endian.h is
available on FreeBSD, OpenBSD, NetBSD and OS X.
llvm-svn: 179527
|
|
|
|
| |
llvm-svn: 171051
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.
Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]
llvm-svn: 169131
|
|
|
|
| |
llvm-svn: 168182
|
|
|
|
| |
llvm-svn: 163454
|
|
|
|
|
|
| |
use it.
llvm-svn: 154496
|
|
|
|
|
|
|
|
|
| |
buildbots. Original commit message:
[ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline, reapplied
with a fix for the longstanding over-read of 32-bit pointer values.
llvm-svn: 152304
|
|
|
|
|
|
| |
with a fix for the longstanding over-read of 32-bit pointer values.
llvm-svn: 152300
|
|
|
|
|
|
| |
inline.", which is breaking the bots in a way I don't understand.
llvm-svn: 152295
|
|
|
|
| |
llvm-svn: 152288
|
|
|
|
|
|
|
|
| |
to do more invasive refactoring here to get FoldingSet to use size_t or
even hash_code directly, but for now this is a good first step to remove
Yet Another Hashing Algorithm from LLVM.
llvm-svn: 151859
|
|
|
|
| |
llvm-svn: 135364
|
|
|
|
|
|
| |
integers with high 32 bits being zero.
llvm-svn: 132538
|
|
|
|
|
|
| |
patch by Johannes Schaub!
llvm-svn: 130151
|
|
|
|
| |
llvm-svn: 120298
|
|
|
|
|
|
|
| |
were not hashing to the same value. Analysis
and patch by Frits van Bommel!
llvm-svn: 119770
|
|
|
|
| |
llvm-svn: 111993
|
|
|
|
|
|
|
|
| |
implementations of equality comparison and hash computation. This
can be used to optimize node lookup by avoiding creating lots of
temporary ID values just for hashing and comparison purposes.
llvm-svn: 111130
|
|
|
|
|
|
| |
with FoldingSetTrait::Profile.
llvm-svn: 111127
|
|
|
|
|
|
| |
large.
llvm-svn: 106390
|
|
|
|
|
|
|
|
|
|
|
|
| |
BumpPtrAllocator-allocated region to allow it to be stored in a more
compact form and to avoid the need for a non-trivial destructor call.
Use this new mechanism in ScalarEvolution instead of
FastFoldingSetNode to avoid leaking memory in the case where a
FoldingSetNodeID uses heap storage, and to reduce overall memory
usage.
llvm-svn: 98829
|
|
|
|
|
|
| |
- This also fixes a dereference of std::string::end, which makes MSVC unhappy and was causing all the static analyzer clang tests to fail.
llvm-svn: 82517
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
two AddString methods to use it.
llvm-svn: 64005
|
|
|
|
|
|
|
|
|
| |
ASCII IR; loading and storing these can change the
bits of NaNs on some hosts. Remove or add warnings
at a few other places using host floating point;
this is a bad thing to do in general.
llvm-svn: 62712
|
|
|
|
|
|
|
| |
to avoid overload ambiguities. This fixes build errors introduced
by r58623.
llvm-svn: 58632
|
|
|
|
| |
llvm-svn: 55210
|
|
|
|
|
|
| |
through multiple nodes in a bucket.
llvm-svn: 54687
|
|
|
|
|
|
| |
conversions to std::string.
llvm-svn: 52995
|
|
|
|
|
|
| |
throughout FoldingSet.cpp.
llvm-svn: 52425
|
|
|
|
| |
llvm-svn: 50659
|
|
|
|
|
|
| |
annoying warnings.
llvm-svn: 47367
|
|
|
|
|
|
|
| |
we had reached the "fake bucket" after the last bucket, allowing the iterator
in some cases to run off the end of the hashtable.
llvm-svn: 47178
|
|
|
|
|
|
|
|
|
|
| |
Added member template "Add" to FoldingSetNodeID that allows "adding" arbitrary
objects to a profile via dispatch to FoldingSetTrait<T>::Profile().
Removed FoldingSetNodeID::AddAPFloat and FoldingSetNodeID::APInt, as their
functionality is now replaced using the above mentioned member template.
llvm-svn: 46957
|
|
|
|
| |
llvm-svn: 46833
|
|
|
|
|
|
| |
over all the nodes in a particular bucket.
llvm-svn: 46716
|
|
|
|
| |
llvm-svn: 46709
|
|
|
|
|
|
|
|
|
|
| |
'FoldingSetNodeImpl' (previously 'FoldingSetNodeID' was a typedef of
'FoldingSetNodeImpl::NodeID').
Why? Clients can now easily forward declare 'FoldingSetNodeID' without having
to include FoldingSet.h.
llvm-svn: 46187
|
|
|
|
| |
llvm-svn: 45418
|
|
|
|
| |
llvm-svn: 42781
|
|
|
|
| |
llvm-svn: 42589
|
|
|
|
|
|
| |
to giving it iterators.
llvm-svn: 42586
|
|
|
|
| |
llvm-svn: 41972
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
double from some of the many places in the optimizers
it appears, and do something reasonable with x86
long double.
Make APInt::dump() public, remove newline, use it to
dump ConstantSDNode's.
Allow APFloats in FoldingSet.
Expand X86 backend handling of long doubles (conversions
to/from int, mostly).
llvm-svn: 41967
|
|
|
|
|
|
| |
ambiguity.
llvm-svn: 41960
|
|
|
|
| |
llvm-svn: 34549
|
|
|
|
|
|
| |
SmallVector as often.
llvm-svn: 33864
|
|
|
|
| |
llvm-svn: 33750
|
|
|
|
| |
llvm-svn: 33718
|