- May 16, 2015
-
-
Richard Trieu authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237507 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Trieu authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237505 91177308-0d34-0410-b5e6-96231b3b80d8
-
Bill Schmidt authored
This patch adds support for the following new instructions in the Power ISA 2.07: vpksdss vpksdus vpkudus vpkudum vupkhsw vupklsw These instructions are available through the vec_packs, vec_packsu, vec_unpackh, and vec_unpackl built-in interfaces. These are lane-sensitive instructions, so the built-ins have different implementations for big- and little-endian, and the instructions must be marked as killing the vector swap optimization for now. The first three instructions perform saturating pack operations. The fourth performs a modulo pack operation, which means it can be represented with a vector shuffle, and conversely the appropriate vector shuffles may cause this instruction to be generated. The other instructions are only generated via built-in support for now. I noticed during patch preparation that the macro __VSX__ was not previously predefined when the power8-vector or direct-move features are requested. This is an error, and I've corrected that here as well. Appropriate tests have been added. There is a companion patch to llvm for the rest of this support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237500 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
MSVCRT's stdio doesn't do line buffering. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237492 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Trieu authored
The error has the form ... 'int' ... 'const int' ... dropped qualifiers. At first glance, it appears that the const qualifier is added. Reverse the types so that the second type is less qualified than the first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237482 91177308-0d34-0410-b5e6-96231b3b80d8
-
- May 15, 2015
-
-
Richard Smith authored
With this change, enabling -fmodules-local-submodule-visibility results in name visibility rules being applied to submodules of the current module in addition to imported modules (that is, names no longer "leak" between submodules of the same top-level module). This also makes it much safer to textually include a non-modular library into a module: each submodule that textually includes that library will get its own "copy" of that library, and so the library becomes visible no matter which including submodule you import. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237473 91177308-0d34-0410-b5e6-96231b3b80d8
-
Peter Collingbourne authored
Differential Revision: http://reviews.llvm.org/D9631 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237463 91177308-0d34-0410-b5e6-96231b3b80d8
-
Serge Pavlov authored
Starting from r236426 FindInstantiatedDecl may instantiate types that are referenced before definition. This change limit the set of types that can be instantiated by this function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237434 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
Fixed a bug with codegen for destination atomic l-value with padding and junk in this padding bytes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237422 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
It broke clang stage2, at least tblgen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237418 91177308-0d34-0410-b5e6-96231b3b80d8
-
Pirama Arumuga Nainar authored
Summary: r235215 enables support in LLVM for legalizing f16 type in the IR. AArch64 already had support for this. r235215 and some backend patches brought support for ARM, X86, X86-64, Mips and Mips64. This change exposes the LangOption 'NativeHalfType' in the command line, so the backend legalization can be used if desired. NativeHalfType is enabled for OpenCL (current behavior) or if '-fnative-half-type' is set. Reviewers: olista01, steven_wu, ab Subscribers: cfe-commits, srhines, aemerson Differential Revision: http://reviews.llvm.org/D9781 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237406 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
The issue I was trying to solve in r236547 was about built-in macros, but I disabled coverage in all system macros. This is actually a bit of overkill, and makes the display of coverage around system macros degrade unnecessarily. Instead, limit this to builtins specifically. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237397 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ted Kremenek authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237396 91177308-0d34-0410-b5e6-96231b3b80d8
-
- May 14, 2015
-
-
Diego Novillo authored
This reverts commit 742dc9b6. This is generating multiple segfaults in our internal builds. Test case coming up shortly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237391 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nemanja Ivanovic authored
Follow-up to commit for revision 236848. Just a test case for the macro definition under the right CPU/Arch. One combination was actually missed in the initial fix: - powerpc64-unknown-unknown -mcpu=pwr8 (rather than -mcpu=power8). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237386 91177308-0d34-0410-b5e6-96231b3b80d8
-
Sergey Dmitrouk authored
Summary: Space on stack allocated for unused structures returned by functions was unused even when it's lifetime didn't intersect with lifetime of any other objects that could use the same space. The test added also checks for named and auto objects. It seems to make sense to have this all in one place. Reviewers: aadg, rsmith, rjmccall, rnk Reviewed By: rnk Subscribers: asl, cfe-commits Differential Revision: http://reviews.llvm.org/D9743 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237385 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237383 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237382 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ismail Pazarbasi authored
Emit warning when operand to `delete` is allocated with `new[]` or operand to `delete[]` is allocated with `new`. Reviewers: rtrieu, jordan_rose, rsmith Subscribers: majnemer, cfe-commits Differential Revision: http://reviews.llvm.org/D4661 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237368 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ikhlas Ajbar authored
This patch factors out SmallDataThreshold code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237364 91177308-0d34-0410-b5e6-96231b3b80d8
-
Vladimir Sukharev authored
Add support for ARMv8.1a architecture. Briefly it is described on http://community.arm.com/groups/processors/blog/2014/12/02/the-armv8-a-architecture-and-its-ongoing-development Reviewers: jmolloy, rengolin Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D8799 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237349 91177308-0d34-0410-b5e6-96231b3b80d8
-
Kevin Qin authored
This fixes PR23414 as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237348 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
FIXME: Do we really emit single \ or escaped \\ along the context with -fms-compatibility -MG? git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237347 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237344 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237338 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
MSVC 2015 changed __declspec(thread) to make it behave like C++11's thread_local keyword instead of acting similarly to __thread. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237337 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237335 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
clang/test/Frontend/dependency-gen-escaping.c: Tweak r237296, to let '/' and '\\' distinguishd, to unbreak "--host=linux --target=msvc". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237333 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
xmmintrin.h includes emmintrin.h and vice versa if SSE2 is enabled. We break this cycle for a modules build, and instead make the xmmintrin.h module re-export the immintrin.h module. Also included is a fix for an assert in the serialization code if a module exports another module that was declared later in the same module map. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237321 91177308-0d34-0410-b5e6-96231b3b80d8
-
Paul Robinson authored
Backslash followed by # in a filename should have both characters escaped, if you do it the way GNU Make wants. GCC doesn't, so we do it the way GCC does rather than the way GNU Make wants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237304 91177308-0d34-0410-b5e6-96231b3b80d8
-
Peter Collingbourne authored
Previously we were setting LangOptions::GNUInline (which controls whether we use traditional GNU inline semantics) if the language did not have the C99 feature flag set. The trouble with this is that C++ family languages also do not have that flag set, so we ended up setting this flag in C++ modes (and working around it in a few places downstream by also checking CPlusPlus). The fix is to check whether the C89 flag is set for the target language, rather than whether the C99 flag is cleared. This also lets us remove most CPlusPlus checks. We continue to test CPlusPlus when deciding whether to pre-define the __GNUC_GNU_INLINE__ macro for consistency with GCC. There is a change in semantics in two other places where we weren't checking both CPlusPlus and GNUInline (FunctionDecl::doesDeclarationForceExternallyVisibleDefinition and FunctionDecl::isInlineDefinitionExternallyVisible), but this change seems to put us back into line with GCC's semantics (test case: test/CodeGen/inline.c). While at it, forbid -fgnu89-inline in C++ modes, as GCC doesn't support it, it didn't have any effect before, and supporting it just makes things more complicated. Differential Revision: http://reviews.llvm.org/D9333 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237299 91177308-0d34-0410-b5e6-96231b3b80d8
-
- May 13, 2015
-
-
Paul Robinson authored
When writing a dependency (.d) file, if space or # is immediately preceded by one or more backslashes, escape the backslashes as well as the space or # character. Otherwise leave backslash alone. This straddles the fence between BSD Make (which does no escaping at all, and does not support space or # in filespecs) and GNU Make (which does support escaping, but will fall back to the filespec as-written if the escaping doesn't match an existing file). Differential Revision: http://reviews.llvm.org/D9208 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237296 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
In some rare cases shared copies of lastprivate/firstprivate variables were not updated after the loop directive. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237243 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eric Fiselier authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237202 91177308-0d34-0410-b5e6-96231b3b80d8
-
- May 12, 2015
-
-
Richard Trieu authored
Previously, if a semi-colon is unexpectedly added before a closing ')', ']' or '}', two errors and one note would emitted, and the parsing would get confused to which scope it was in. This change consumes the semi-colon, recovers parsing better, and emits only one error with a fix-it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237192 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
Patch by Teresa Johnson. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237187 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Belevich authored
GetOutputStream() owns the stream it returns pointer to and the pointer should never be freed by us. When we fail to load and exit early, unique_ptr still holds the pointer and frees it which leads to compiler crash when CompilerInstance attempts to free it again. Added regression test for failed bitcode linking. Differential Revision: http://reviews.llvm.org/D9625 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237159 91177308-0d34-0410-b5e6-96231b3b80d8
-
Sunil Srivastava authored
details in http://reviews.llvm.org/D9483 goes with llvm checkin r237150 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237151 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237102 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
'schedule' clause for combined directives requires additional processing. Special helper variable is generated, that is captured in the outlined parallel region for 'parallel for' region. This captured variable is used to store chunk expression from the 'schedule' clause in this 'parallel for' region. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237100 91177308-0d34-0410-b5e6-96231b3b80d8
-