| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
This fixes GVNHoist's portion of PR28670.
llvm-svn: 276658
|
| |
|
|
| |
llvm-svn: 276657
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Allow an assembler backend to get ABI options. This is to match the changes
to http://reviews.llvm.org/D16213.
Tested with "make check-clang"
Patch by: Joel Jones
Differential Revision: https://reviews.llvm.org/D16538
llvm-svn: 276655
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some targets, notably AArch64 for ILP32, have different relocation encodings
based upon the ABI. This is an enabling change, so a future patch can use the
ABIName from MCTargetOptions to chose which relocations to use. Tested using
check-llvm.
The corresponding change to clang is in: http://reviews.llvm.org/D16538
Patch by: Joel Jones
Differential Revision: https://reviews.llvm.org/D16213
llvm-svn: 276654
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The '#pragma once' directive was erroneously ignored when encountered
in the header-file specified in generate-PCH-mode. This resulted in
compile-time errors in some cases with legal code, and also a misleading
warning being produced.
Patch by Warren Ristow!
Differential Revision: http://reviews.llvm.org/D19815
llvm-svn: 276653
|
| |
|
|
|
|
|
|
|
|
|
|
| |
...but most importantly, it cannot be used well with 'auto', because
the inferred type is StringSwitch rather than the result type. This
is a problem because StringSwitch stores addresses of temporary
values rather than copying or moving the value into its own storage.
Changing this uncovered the bug in PassBuilder, also in this patch.
Clang doesn't seem to have any occurrences of the issue.
llvm-svn: 276652
|
| |
|
|
|
|
| |
This reverts commit r276640. Breaks multiple buildbots.
llvm-svn: 276651
|
| |
|
|
|
|
| |
This reverts commit r276641. Breaks multiple buildbots.
llvm-svn: 276650
|
| |
|
|
| |
llvm-svn: 276649
|
| |
|
|
|
|
|
|
| |
It failed with assertion before this patch.
Differential Revision: https://reviews.llvm.org/D22735
llvm-svn: 276648
|
| |
|
|
|
|
|
|
| |
- Accept ma{2100,2150,2150} for -mcpu
- Define more preprocessor macros
- Don't append "le/" to little-endian lib dirs
llvm-svn: 276646
|
| |
|
|
|
|
|
| |
We embed the PTX code into the host IR as a global variable and compile it
at run-time into a GPU kernel.
llvm-svn: 276645
|
| |
|
|
|
|
| |
test/Analysis/Dominators/2007-01-14-BreakCritEdges.ll.
llvm-svn: 276644
|
| |
|
|
| |
llvm-svn: 276642
|
| |
|
|
| |
llvm-svn: 276641
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This check verifies if buffer type and MPI (Message Passing Interface)
datatype pairs match. All MPI datatypes defined by the MPI standard (3.1)
are verified by this check. User defined typedefs, custom MPI datatypes and
null pointer constants are skipped, in the course of verification.
Instructions on how to apply the check can be found at: https://github.com/0ax1/MPI-Checker/tree/master/examples
Reviewers: alexfh
Subscribers: cfe-commits
Projects: #clang-tools-extra
Patch by Alexander Droste!
Differential Revision: https://reviews.llvm.org/D21962
llvm-svn: 276640
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch moves the MPIFunctionClassifier header to `clang/include/clang/StaticAnalyzer/Checkers`,
in order to make it accessible in other parts of the architecture.
Reviewers: dcoughlin, zaks.anna
Subscribers: alexfh, cfe-commits
Patch by Alexander Droste!
Differential Revision: https://reviews.llvm.org/D22671
llvm-svn: 276639
|
| |
|
|
| |
llvm-svn: 276638
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Adding a new pass PolyhedralInfo. This pass will be the interface to Polly.
Initially, we will provide the following interface:
- #IsParallel(Loop *L) - return a bool depending on whether the loop is
parallel or not for the given program order.
Patch by Utpal Bora <cs14mtech11017@iith.ac.in>
Differential Revision: https://reviews.llvm.org/D21486
llvm-svn: 276637
|
| |
|
|
|
|
|
| |
Also factor out getArraySize() to avoid code dupliciation and reorder some
function arguments to indicate the direction into which data is transferred.
llvm-svn: 276636
|
| |
|
|
|
|
|
| |
At the beginning of each SCoP, we allocate device arrays for all arrays
used on the GPU and we free such arrays after the SCoP has been executed.
llvm-svn: 276635
|
| |
|
|
| |
llvm-svn: 276634
|
| |
|
|
| |
llvm-svn: 276633
|
| |
|
|
|
|
|
|
|
|
| |
This function is currently unused and won't be used in this form again. Instead
of freeing many unrelated items at the same time, we will instead explicitly
call free function from the host-IR we generate for each object we want to free.
These specific free functions will be added together with the corresponding
host-IR generation code.
llvm-svn: 276632
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Do not process SCoPs with infeasible runtime context in the new
ScopInfoWrapperPass. Do not compute dependences for such SCoPs in the new
DependenceInfoWrapperPass.
Patch by Utpal Bora <cs14mtech11017@iith.ac.in>
Differential Revision: https://reviews.llvm.org/D22402
llvm-svn: 276631
|
| |
|
|
|
|
| |
linker script
llvm-svn: 276630
|
| |
|
|
|
|
|
|
| |
Added thumb targets and dataflow checks to the longMAC test.
Differential Revision: https://reviews.llvm.org/D22684
llvm-svn: 276629
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid MipsAnalyzeImmediate usage if the constant fits in an 32-bit
integer. This allows us to generate the same instructions for the
materialization of the same constants regardless the width of their
type.
Patch by: Vasileios Kalintiris
Contributions by: Simon Dardis
Reviewers: Daniel Sanders
Differential Review: https://reviews.llvm.org/D21689
llvm-svn: 276628
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the second patch to apply the BLIS matmul optimization pattern
on matmul kernels
(http://www.cs.utexas.edu/users/flame/pubs/TOMS-BLIS-Analytical.pdf).
BLIS implements gemm as three nested loops around a macro-kernel, plus
two packing routines. The macro-kernel is implemented in terms
of two additional loops around a micro-kernel. The micro-kernel
is a loop around a rank-1 (i.e., outer product) update. In this change
we create the BLIS macro-kernel by applying a combination of tiling
and interchanging. In subsequent changes we will implement the packing
transformation.
Reviewed-by: Tobias Grosser <tobias@grosser.es>
Differential Revision: http://reviews.llvm.org/D21491
llvm-svn: 276627
|
| |
|
|
|
|
|
|
|
| |
Follow up to r276624. Changes bits 22-20 to be parameters to
instruction class.
Differential Revision: https://reviews.llvm.org/D22562
llvm-svn: 276626
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Thumb1 version of the code for saving and restoring the unwind
context has a few bugs which prevent it from working:
* It uses the STM instruction without writeback, which is not valid for Thumb1
(It was introduced in Thumb2).
* It only saves/restores the low 8 registers, the sp and the lr, so if a
program uses r8-r12 they will not be correctly restored when throwing an
exception.
There aren't currently any Thumb1 build-bots to test this, but we have
been successfully running the libc++abi and libc++ test suites on
Cortex-M0 models, as well as some other test suites that use C++
exceptions on a downstream version of libunwind with this patch applied.
Differential Revision: https://reviews.llvm.org/D22292
llvm-svn: 276625
|
| |
|
|
|
|
|
|
| |
Use ISelDAGToDAG to recognise the SMMLS instruction pattern.
Differential Revision: https://reviews.llvm.org/D22562
llvm-svn: 276624
|
| |
|
|
|
|
|
|
|
| |
interface.
There is no need to expose the selected device at the moment. We also pass back
pointers as return values, as this simplifies the interface.
llvm-svn: 276623
|
| |
|
|
|
|
|
|
| |
This allows the finalization routine of the IslNodeBuilder to be overwritten
by derived classes. Being here, we also drop the unnecessary 'Scop' postfix
and the unnecessary 'Scop' parameter.
llvm-svn: 276622
|
| |
|
|
|
|
|
| |
Before this change, the debug statements in polly_initDevice would all be
skipped, as debug-mode would only be enabled _after_ they have already been run.
llvm-svn: 276621
|
| |
|
|
|
|
|
| |
TemplateFunctionFindBy{Declaration|Use}.cpp contained typos and therefore were
failing. clang-rename passes these tests after typos are fixed.
llvm-svn: 276620
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Output section description in SECTIONS looks like that:
section [address] [(type)] :
...
{
...
}
Patch implements support of address atribute.
Differential revision: https://reviews.llvm.org/D22689
llvm-svn: 276619
|
| |
|
|
|
|
|
| |
We agreed to call it "platform default" instead of "architecture default".
(see D17286)
llvm-svn: 276618
|
| |
|
|
| |
llvm-svn: 276617
|
| |
|
|
|
| |
Reviewed-by: Tobias Grosser <tobias@grosser.es>
llvm-svn: 276616
|
| |
|
|
|
|
| |
instructions.
llvm-svn: 276615
|
| |
|
|
|
|
| |
the first argument of an FMADD/FMSUB/FNMADD/FNMSUB/FMADDSUB/FMSUBADD node. Also add patterns to support all combinations of the broadcast input and the preserved input for masked versions.
llvm-svn: 276614
|
| |
|
|
|
|
| |
to really be 213, 231, and 132.
llvm-svn: 276613
|
| |
|
|
| |
llvm-svn: 276612
|
| |
|
|
|
|
|
|
| |
This functionality won't be used in the current iteration. Drop it for now to
reduce the surface of the library. We can always add it back in when we need
it again.
llvm-svn: 276611
|
| |
|
|
|
|
|
|
|
|
| |
Modify the variable names and code style to be that of modern LLVM.
Patch by River Riddle!
Differential Revision: https://reviews.llvm.org/D22743
llvm-svn: 276610
|
| |
|
|
|
|
|
|
|
|
|
| |
The public InlineFunction utility assumes that the passed in
InlineFunctionInfo has a valid AssumptionCacheTracker.
Patch by River Riddle!
Differential Revision: https://reviews.llvm.org/D22706
llvm-svn: 276609
|
| |
|
|
| |
llvm-svn: 276608
|
| |
|
|
| |
llvm-svn: 276607
|
| |
|
|
|
|
|
| |
Paths like C:/foo will never work on UNIX platforms, don't bother
implicitly adding them to the search path.
llvm-svn: 276606
|