| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
| |
Removed some old comments + improved handling of 'priority' clause value
during codegen after comments from Richard Smith.
llvm-svn: 275945
|
| |
|
|
|
|
|
|
| |
Failure to do this breaks relative paths which begin with '..'.
This issue was caught by the (still nascent) coverage bot.
llvm-svn: 275924
|
| |
|
|
|
|
|
|
| |
This fixes the issue of having duplicate entries for the same file in a
coverage report s.t none of the entries actually displayed the correct
coverage information.
llvm-svn: 275913
|
| |
|
|
|
|
|
|
|
|
| |
Summary: Removed unused headers, replaced some headers with forward class declarations
Patch by: Eugene <claprix@yandex.ru>
Differential Revision: https://reviews.llvm.org/D20100
llvm-svn: 275882
|
| |
|
|
|
|
|
|
| |
Add support for ObjC types to respect the DLLImport/DLLExport storage
annotations. This only effects COFF output. This would allow usage with
clang/C2, but not with clang/LLVM due to hard coded section names.
llvm-svn: 275737
|
| |
|
|
|
|
|
| |
Format some code which was oddly formatted. Use a bit of auto to make the code
more legible. NFC.
llvm-svn: 275736
|
| |
|
|
|
|
|
| |
Clean up some formatting issues and use a bit more StringRef based operations
instead of SmallStrings. NFC.
llvm-svn: 275735
|
| |
|
|
|
|
|
|
|
|
| |
No functional change, just some cleanups:
- Use auto when it is appropriate.
- There were some strange static_casts which were superfluous.
- Use range-based for loops when appropriate.
- The dyn_cast_or_null construct was used when null was impossible.
llvm-svn: 275699
|
| |
|
|
|
|
|
|
| |
Rather than building up a number of SmallString-s in order to construct a
std::string, use more StringRefs and construct the string once before use. This
avoids unnecessary string constructions. NFC.
llvm-svn: 275697
|
| |
|
|
|
|
|
|
| |
Add a couple of local variables for the class interface and the super class
interface. This allows for the repeated access of the information to be cached
and makes the code simpler to understand. NFC.
llvm-svn: 275696
|
| |
|
|
| |
llvm-svn: 275623
|
| |
|
|
| |
llvm-svn: 275622
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D22380
llvm-svn: 275577
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the CompilerInstance::createOutputFile function to return
a std::unique_ptr<llvm::raw_ostream>, rather than an llvm::raw_ostream
implicitly owned by the CompilerInstance. This in most cases required that
I move ownership of the output stream to the relevant ASTConsumer.
The motivation for this change is to allow BackendConsumer to be a client
of interfaces such as D20268 which take ownership of the output stream.
Differential Revision: http://reviews.llvm.org/D21537
llvm-svn: 275507
|
| |
|
|
|
|
|
|
| |
This patch is to implement sema and parsing for 'target parallel for simd' pragma.
Differential Revision: http://reviews.llvm.org/D22096
llvm-svn: 275365
|
| |
|
|
|
|
|
|
|
|
| |
'if' and 'switch':
if (stmt; condition) { ... }
Patch by Anton Bikineev! Some minor formatting and comment tweets by me.
llvm-svn: 275350
|
| |
|
|
|
|
|
|
|
|
|
| |
-fxray-instrument: enables XRay annotation of IR
-fxray-instruction-threshold: configures the threshold for function size (looking at IR instructions), and allow LLVM to decide whether to add the nop sleds later on in the process.
Also implements the related xray_always_instrument and xray_never_instrument function attributes.
Patch by Dean Michael Berris.
llvm-svn: 275330
|
| |
|
|
|
|
|
|
| |
'is_device_ptr' of target
http://reviews.llvm.org/D22070
llvm-svn: 275282
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
'target data'
http://reviews.llvm.org/D21904
This patch is similar to the implementation of 'private' clause: it adds a list of private pointers to be used within the target data region to store the device pointers returned by the runtime.
Please refer to the following document for a full description of what the runtime witll return in this case (page 10 and 11):
https://github.com/clang-omp/OffloadingDesign
I am happy to answer any question related to the runtime interface to help reviewing this patch.
llvm-svn: 275271
|
| |
|
|
|
|
|
|
|
|
|
| |
Improved test with user define structure pipe type case.
Reviewers: Anastasia, pxli168
Subscribers: yaxunl, cfe-commits
Differential revision: http://reviews.llvm.org/D21744
llvm-svn: 275259
|
| |
|
|
|
|
|
|
| |
Initialise more members in initializer lists. Invert the condition that had
grown to be pretty confusing. The `_objc_empty_vtable` is only used on macOS
<10.9. This simplifies the code. NFC.
llvm-svn: 275241
|
| |
|
|
|
|
|
|
| |
We need to mark the appropriate bits in ThrowInfo and HandlerType so
that the personality routine can correctly handle qualification
conversions.
llvm-svn: 275154
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Do not assign source regions located within system headers file ID's,
and do not construct counter mapping regions out of them.
This makes coverage reports less cluttered and less mysterious. E.g
using the "assert" macro doesn't cause assert.h to appear in reports,
and it no longer shows the "assertion failed" branch as an uncovered
region.
It also makes coverage mapping sections a bit smaller (e.g a 1%
reduction in a stage2 build of bin/llvm-as).
llvm-svn: 275121
|
| |
|
|
| |
llvm-svn: 275120
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Nested if statements can generate empty BBs whose terminator branches
unconditionally to its successor. These branches are not eliminated
to help generate better line number information in some cases, but there
is no reason to keep the empty blocks that result from nested ifs.
Reviewers: mehdi_amini, dblaikie, echristo
Subscribers: mehdi_amini, cfe-commits
Differential review: http://reviews.llvm.org/D11360
llvm-svn: 275115
|
| |
|
|
|
|
|
| |
Imported variables cannot really be definitions for the purposes of
IR generation.
llvm-svn: 275040
|
| |
|
|
|
|
|
|
| |
Reviewers: tstellardAMD
Differential Revision: http://reviews.llvm.org/D20299
llvm-svn: 275030
|
| |
|
|
|
|
| |
We were just setting DisableUnitAtATime to its default value.
llvm-svn: 275005
|
| |
|
|
|
|
|
|
| |
Don't create unnecessary truncations if the result will not be used.
Also prefer preforming math before the truncation, it makes it a little
easier to reason about.
llvm-svn: 274984
|
| |
|
|
|
|
|
|
|
| |
Place the structure data into `cfstring`. This both isolates the structures to
permit coalescing in the future (by the linker) as well as ensures that it
doesnt get marked as read-only data. The structures themselves are not
read-only, only the string contents.
llvm-svn: 274956
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add OCL option -cl-no-signed-zeros to driver options.
Also added to opencl.cl testcases.
Patch by Aaron En Ye Shi.
Differential Revision: http://reviews.llvm.org/D22067
llvm-svn: 274923
|
| |
|
|
|
|
| |
llvm::VectorType and calling getNumElements. This is equivalent and shorter.
llvm-svn: 274823
|
| |
|
|
|
|
| |
builtin handling. NFC
llvm-svn: 274821
|
| |
|
|
|
|
| |
handling. Just get the type from the operand of the builtin instead. NFC
llvm-svn: 274820
|
| |
|
|
|
|
|
|
|
| |
ArrayRef is a little better than passing around a pointer/length
pair.
No functional change is intended.
llvm-svn: 274732
|
| |
|
|
|
|
|
|
|
|
| |
Reverting because it causes a test failure on build bots (Modules/ModuleDebugInfo.cpp). Failure does not reproduce locally.
svn revision: rL274698
This reverts commit 3c5ed6599b086720aab5b8bd6941149d066806a6.
llvm-svn: 274706
|
| |
|
|
|
|
|
|
|
|
| |
This should work now that the LLVM-side of the change has landed successfully.
Original Differential Revision: http://reviews.llvm.org/D21705
This reverts commit a30322e861c387e1088f47065d0438c6bb019879.
llvm-svn: 274698
|
| |
|
|
|
|
|
|
| |
For the purpose of emitting debug info, entities with private linkage
should be treated the same as internal linkage. While this doesn't
change anything in practice, it makes the code a little less confusing.
llvm-svn: 274677
|
| |
|
|
|
|
| |
This reverts commit 0af5ee9631c7c167dc40498b415876553e314c95.
llvm-svn: 274633
|
| |
|
|
|
|
|
|
| |
This includes nested types in the member list, even if there are no members of that type. Note that structs and classes have themselves as an "implicit struct" as the first member, so we skip implicit ones.
Differential Revision: http://reviews.llvm.org/D21705
llvm-svn: 274628
|
| |
|
|
|
|
| |
makes them the same as what is done when using the SSE builtins for these same encodings.
llvm-svn: 274608
|
| |
|
|
|
|
|
|
| |
Summary: This patch is an implementation of sema and parsing for the OpenMP composite pragma 'distribute simd'.
Differential Revision: http://reviews.llvm.org/D22007
llvm-svn: 274604
|
| |
|
|
| |
llvm-svn: 274603
|
| |
|
|
|
|
| |
Found using clang's code coverage tool.
llvm-svn: 274599
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
s6.13.17.
- Added new Builtins: enqueue_kernel, get_kernel_work_group_size
and get_kernel_preferred_work_group_size_multiple.
These Builtins use custom check to diagnose parameters of the passed Blocks
i. e. variable number of 'local void*' type params, and check different
overloads specified in Table 6.31 of OpenCL v2.0.
- IR is generated as an internal library call for each OpenCL Builtin,
reusing ObjC Block implementation.
Review: http://reviews.llvm.org/D20249
llvm-svn: 274540
|
| |
|
|
|
|
|
|
| |
Summary: This patch is an implementation of sema and parsing for the OpenMP composite pragma 'distribute parallel for simd'.
Differential Revision: http://reviews.llvm.org/D21977
llvm-svn: 274530
|
| |
|
|
|
|
|
|
|
|
| |
Currently we only have OpenCL 2.0 Builtins i.e. pipes or address space conversions.
They have to be added only in the version 2.0 compilation mode to make the identifiers
available for use in the other versions.
Review: http://reviews.llvm.org/D20249
llvm-svn: 274509
|
| |
|
|
|
|
| |
extension of the result of a v2i1 or v4i1 masked compare. This way we emit something that the backend easily interprets as a concatenation rather than a true shuffle. This delivers slightly better codegen with the current backend capabilities.
llvm-svn: 274484
|
| |
|
|
| |
llvm-svn: 274433
|
| |
|
|
|
|
|
|
| |
where possible.
No functionality change intended
llvm-svn: 274432
|