- Jul 26, 2013
-
-
Tobias Grosser authored
The bitcode representation attribute kinds are encoded into / decoded from should be independent of the current set of LLVM attributes and their position in the AttrKind enum. This patch explicitly encodes attributes to fixed bitcode values. With this patch applied, LLVM does not silently misread attributes written by LLVM 3.3. We also enhance the decoding slightly such that an error message is printed if an unknown AttrKind encoding was dected. Bonus: Dropping bitcode attributes from AttrKind is now easy, as old AttrKinds do not need to be kept to support the Bitcode reader. llvm-svn: 187186
-
Jason Molenda authored
easier to retrieve a register value. llvm-svn: 187184
-
Eli Friedman authored
Attempt 2. Sorry about the noise. llvm-svn: 187183
-
Craig Topper authored
llvm-svn: 187182
-
Bill Schmidt authored
This patch provides basic support for powerpc64le as an LLVM target. However, use of this target will not actually generate little-endian code. Instead, use of the target will cause the correct little-endian built-in defines to be generated, so that code that tests for __LITTLE_ENDIAN__, for example, will be correctly parsed for syntax-only testing. Code generation will otherwise be the same as powerpc64 (big-endian), for now. The patch leaves open the possibility of creating a little-endian PowerPC64 back end, but there is no immediate intent to create such a thing. The new test case variant ensures that correct built-in defines for little-endian code are generated. llvm-svn: 187180
-
Bill Schmidt authored
This patch provides basic support for powerpc64le as an LLVM target. However, use of this target will not actually generate little-endian code. Instead, use of the target will cause the correct little-endian built-in defines to be generated, so that code that tests for __LITTLE_ENDIAN__, for example, will be correctly parsed for syntax-only testing. Code generation will otherwise be the same as powerpc64 (big-endian), for now. The patch leaves open the possibility of creating a little-endian PowerPC64 back end, but there is no immediate intent to create such a thing. The LLVM portions of this patch simply add ppc64le coverage everywhere that ppc64 coverage currently exists. There is nothing of any import worth testing until such time as little-endian code generation is implemented. In the corresponding Clang patch, there is a new test case variant to ensure that correct built-in defines for little-endian code are generated. llvm-svn: 187179
-
Eli Friedman authored
llvm-svn: 187178
-
Rui Ueyama authored
llvm-svn: 187177
-
Eli Friedman authored
Based on patch by Yunzhong Gao. llvm-svn: 187176
-
Eli Friedman authored
Just more craziness to find crtbegin.o etc. Patch by Stephen Kelly. llvm-svn: 187175
-
Eli Friedman authored
This allows the ObjFW runtime to correctly implement message forwarding for messages which return a struct. Patch by Jonathan Schleifer. llvm-svn: 187174
-
Jim Ingham authored
Refine the fix in r187094 to only distrust the StackID comparision when we are starting from an address with no symbols. If we don't do that "nexti" will stop too soon when stepping past a tail call jump. rdar://problem/14516227 llvm-svn: 187173
-
Eli Friedman authored
It turns out that Plum Hall depends on us not emitting an error on integer literals which fit into long long, but fit into unsigned long long. So C99 conformance requires not conforming to C99. :) llvm-svn: 187172
-
Eli Friedman authored
Also, fix the wording to reflect this. llvm-svn: 187171
-
Reid Kleckner authored
llvm-svn: 187170
-
Sean Callanan authored
- First, the watchpoint size was being cast to the wrong type. This is primarily cosmetic, but annoying. - Second, the options for the watchpoint command were not being initialized correctly, which led to the watchpoint size sometimes having absurdly large values. This caused watchpoints to fail to be set in some cases. <rdar://problem/12658775> llvm-svn: 187169
-
Hans Wennborg authored
They seemed to have the same implications, and this makes for one less flag to worry about. Differential Revision: http://llvm-reviews.chandlerc.com/D1219 llvm-svn: 187168
-
Richard Smith authored
sufficient to only consider names visible at the point of instantiation, because that may not include names that were visible when the template was defined. More generally, if the instantiation backtrace goes through a module M, then every declaration visible within M should be available to the instantiation. Any of those declarations might be part of the interface that M intended to export to a template that it instantiates. The fix here has two parts: 1) If we find a non-visible declaration during name lookup during template instantiation, check whether the declaration was visible from the defining module of all entities on the active template instantiation stack. The defining module is not the owning module in all cases: we look at the module in which a template was defined, not the module in which it was first instantiated. 2) Perform pending instantiations at the end of a module, not at the end of the translation unit. This is general goodness, since it significantly cuts down the amount of redundant work that is performed in every TU importing a module, and also implicitly adds the module containing the point of instantiation to the set of modules checked for declarations in a lookup within a template instantiation. There's a known issue here with template instantiations performed while building a module, if additional imports are added later on. I'll fix that in a subsequent commit. llvm-svn: 187167
-
Bill Wendling authored
llvm-svn: 187166
-
Reid Kleckner authored
llvm-svn: 187165
-
Hans Wennborg authored
llvm-svn: 187164
-
Hans Wennborg authored
llvm-svn: 187163
-
Rui Ueyama authored
llvm-svn: 187162
-
Rui Ueyama authored
llvm-svn: 187161
-
Jordan Rose authored
Previously, we tried to avoid creating new temporary object regions if the value to be materialized itself came from a temporary object region. However, once we became more strict about lvalues vs. rvalues (months ago), this optimization became dead code, because the input to this function will always be an rvalue (i.e. a symbolic value or compound value rather than a region, at least for structs). This would be a nice optimization to keep, but removing it makes it simpler to reason about temporary regions. llvm-svn: 187160
-
Aaron Ballman authored
Using a different loop induction variable than the enclosing scope. No functional changes intended. llvm-svn: 187159
-
- Jul 25, 2013
-
-
Roman Divacky authored
structure not just a pointer. This implements that and thus fixes va_copy on PPC32. Fixes #15286. Both bug and patch by Florian Zeitz! llvm-svn: 187158
-
Manman Ren authored
llvm-svn: 187157
-
David Blaikie authored
Use the same filtering for assembly arguments to -cc1as as we do for -cc1, this allows a consistent (& more useful) diagnostic experience for users (rather than getting an error from -cc1as (which a user shouldn't really be thinking about) about --foo, they get an error from clang about --foo in -Wa,) I'm sort of surprised by the separation of -cc1as & the separate argument handling, etc, but at least this removes a little bit of the duplication. llvm-svn: 187156
-
Ed Maste authored
llvm-svn: 187155
-
Rafael Espindola authored
Back in r140220 we removed the autoconf code that would set LLVMCC_OPTION since it was only used by the test-suite. This patch now removes code that would only be used if LLVMCC_OPTION was set. llvm-svn: 187154
-
Edwin Vane authored
Recent failures on a freebsd buildbot indicated a weakness in the Reformatting.cpp lit test. Tweaking the test to avoid false negatives and hopefully make the buildbot happy. llvm-svn: 187153
-
Rafael Espindola authored
llvm-svn: 187152
-
Rafael Espindola authored
llvm-svn: 187151
-
Manman Ren authored
Make sure the context field of DIType is MDNode. Fix testing cases to make them pass the verifier. llvm-svn: 187150
-
Ed Maste authored
Also move the logic to shorten thread names from linux/Host.cpp to a new SetShortThreadName as both FreeBSD and Linux need the functionality. llvm-svn: 187149
-
Ed Maste authored
llvm-svn: 187148
-
Ed Maste authored
- ReadLocker constructors that take a lock - Unconditional Lock::ReadLock and ReadLocker::Lock (all consumers use TryLock) - Make Unlock protected, as it has no external consumers llvm-svn: 187147
-
Rafael Espindola authored
llvm-svn: 187146
-
Rafael Espindola authored
Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html llvm-svn: 187145
-