- Oct 12, 2012
-
-
rdar://problem/12457841Bob Wilson authored
This is a temporary hack until Bill's project to record command line options in the LLVM IR is ready. Clang currently sets a default CPU but that isn't recorded anywhere and it doesn't get used in the final LTO compilation. llvm-svn: 165809
-
Jim Ingham authored
llvm-svn: 165808
-
Fariborz Jahanian authored
overridden symbols. OK'ed off-line by Doug. // rdar://12378793 llvm-svn: 165807
-
Greg Clayton authored
Patch from Daniel Malea that cleans up the process parameters for Process/Thread classes for POSIX and Linux. llvm-svn: 165806
-
Greg Clayton authored
ConstString Host::GetVendorString(); ConstString Host::GetOSString(); comes from. It now all comes from the Host::GetArchitecture (eSystemDefaultArchitecture) like the Apple build was doing to minimize the number of places that need to be updated when Host::GetArchitecture () is called. llvm-svn: 165805
-
Greg Clayton authored
Modified patch from Matt Kopec that makes sure the run lock is acquired when attaching and makes sure the pid is being set on linux in the process info. llvm-svn: 165804
-
NAKAMURA Takumi authored
llvm/test/CodeGen/PowerPC/2012-10-12-bitcast.ll: Try to fix failure on non-ppc hosts, to add -mattr=+altivec. llvm-svn: 165803
-
Ulrich Weigand authored
On PowerPC, a bitcast of <16 x i8> to i128 may run through a code path in ExpandRes_BITCAST that attempts to do an intermediate bitcast to a <4 x i32> vector, and then construct the Hi and Lo parts of the resulting i128 by pairing up two of those i32 vector elements each. The code already recognizes that on a big-endian system, the first two vector elements form the Hi part, and the final two vector elements form the Lo part (vice-versa from the little-endian situation). However, we also need to take endianness into account when forming each of those separate pairs: on a big-endian system, vector element 0 is the *high* part of the pair making up the Hi part of the result, and vector element 1 is the low part of the pair. The code currently always uses vector element 0 as the low part and vector element 1 as the high part, as is appropriate for little-endian platforms only. This patch fixes this by swapping the vector elements as they are paired up as appropriate. llvm-svn: 165802
-
NAKAMURA Takumi authored
llvm-svn: 165797
-
NAKAMURA Takumi authored
llvm-svn: 165796
-
NAKAMURA Takumi authored
llvm-svn: 165795
-
NAKAMURA Takumi authored
llvm-svn: 165794
-
Benjamin Kramer authored
llvm-svn: 165793
-
Duncan Sands authored
llvm-svn: 165792
-
Tim Northover authored
Patch by Amara Emerson. llvm-svn: 165791
-
NAKAMURA Takumi authored
llvm-svn: 165790
-
Tobias Grosser authored
llvm-svn: 165789
-
Argyrios Kyrtzidis authored
llvm-svn: 165788
-
Nick Lewycky authored
-Wnon-virtual-dtor for real. llvm-svn: 165787
-
Nick Lewycky authored
virtual destructors. llvm-svn: 165786
-
Eric Christopher authored
llvm-svn: 165785
-
Sebastian Pop authored
DependenceAnalysis.cpp:1164:32: warning: implicit truncation from 'int' to bitfield changes value from -5 to 3 [-Wconstant-conversion] Result.DV[Level].Direction &= ~Dependence::DVEntry::GT; ^ ~~~~~~~~~~~~~~~~~~~~~~~~ Patch from Preston Briggs <preston.briggs@gmail.com>. llvm-svn: 165784
-
Reed Kotler authored
llvm-svn: 165783
-
Sean Silva authored
llvm-svn: 165782
-
Bill Wendling authored
llvm-svn: 165781
-
NAKAMURA Takumi authored
llvm-svn: 165780
-
Sean Silva authored
llvm-svn: 165779
-
Evan Cheng authored
not legal. However, it should use a div instruction + mul + sub if divide is legal. The rem legalization code was missing a check and incorrectly uses a divrem libcall even when div is legal. rdar://12481395 llvm-svn: 165778
-
Bill Wendling authored
llvm-svn: 165777
-
Bill Wendling authored
llvm-svn: 165776
-
Sean Silva authored
The intent of this document is to be the go-to document for anybody who wants to write new documentation, but isn't familiar with Sphinx. llvm-svn: 165775
-
Ted Kremenek authored
Conditionally use an integral cast for BodyFarm support for OSAtomicCompareAndSwap if the return type is not a boolean. llvm-svn: 165774
-
Douglas Gregor authored
#undef only occurs if that submodule is imported. llvm-svn: 165773
-
Chad Rosier authored
llvm-svn: 165772
-
Fariborz Jahanian authored
has none of its own. Factor in Doug's comments. // rdar://12378793 llvm-svn: 165771
-
Sean Silva authored
Updates to llvm/Support/Casting.h have rendered these classof()'s irrelevant. llvm-svn: 165770
-
Sean Silva authored
Somewhat troublingly, without this implemented, the check inside isa_impl<> would silently use the parent's `classof()` when determining whether it was okay to downcast from the parent to the child! Bug analysis: A build failure after removing the parent's `classof()` initially alerted me to the bug, after which a little bit of thinking and reading of the code identified the root cause. The compiler could be made to prevent this bug from happening if there were a way to ensure that in the code template <typename To, typename From, typename Enabler = void> struct isa_impl { static inline bool doit(const From &Val) { return To::classof(&Val); } }; that `To::classof` is actually inside the class `To`, and not in a base class. I am not aware of a way to check this in C++. If there is a means to perform that check, please bring it up on the list and this will be fixed. There is a high likelihood that there are other instances of this same bug in the codebase. llvm-svn: 165769
-
Sean Silva authored
* Fix confusing explanation regarding abstract classes. * Clarify auto-upcasting and why `Shape` doesn't need a `classof()`. * Add section `Rules of Thumb` with some quick summary tips. llvm-svn: 165768
-
Sean Silva authored
isa<> et al. automatically infer when the cast is an upcast (including a self-cast), so these are no longer necessary. llvm-svn: 165767
-
Sean Silva authored
Recent changes to isa<>/dyn_cast<> have made unnecessary those classof() of the form: static bool classof(const Foo *) { return true; } Accordingly, remove mention of such classof() from the documentation. llvm-svn: 165766
-