| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
No functionality change.
<rdar://problem/14292693>
llvm-svn: 206082
|
| |
|
|
|
|
|
|
|
| |
Until now we were generating duplicate counters for lambdas: one set
in the function where the lambda was declared and another for the
lambda itself. Instead, we should skip over the bodies of lambdas in
their containing contexts.
llvm-svn: 206081
|
| |
|
|
|
|
| |
Based on a code review suggestion from Eric Christopher in r205990
llvm-svn: 206080
|
| |
|
|
|
|
|
|
|
| |
This patch adds patterns to generate the cls instruction ARM64. Includes tests
for 64 bit and 32 bit operands.
rdar://15611957
llvm-svn: 206079
|
| |
|
|
| |
llvm-svn: 206078
|
| |
|
|
|
|
|
|
|
|
| |
A portion of the vtordisp computation that was previously unguarded by a
test for the declaration of user defined constructors/destructors was
erroniously adding vtordisps to things that shouldn't have them. This
patch correctly guards that codepath. In addition, it updates the
comments to make them more clear. Test case is included.
llvm-svn: 206077
|
| |
|
|
|
|
| |
Found by -Wdocumentation.
llvm-svn: 206076
|
| |
|
|
|
|
|
|
|
|
|
| |
search option.
fexhaustive-register-search => exhaustive-register-search
'f' is a Clang thing!
This is related to PR18747.
llvm-svn: 206075
|
| |
|
|
|
|
|
|
|
|
|
| |
-fexhaustive-register-search option to allow an exhaustive search during last
chance recoloring.
This is related to PR18747
Patch by MAYUR PANDEY <mayur.p@samsung.com>.
llvm-svn: 206072
|
| |
|
|
|
|
|
|
|
|
| |
Through some oddity where truncate (sextload x) isn't folded into
an anyextload for vectors, the sextload remains if the
vector isn't immediately scalarized. This keeps the expected
zextload instructions in the kernel-args test when small type
vectors aren't scalarized.
llvm-svn: 206070
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The -fms-extensions option affects a number of subtle front-end C/C++
behaviors, and it would be useful to be able to distinguish MS keywords
from regular identifiers in the ms-extensions mode even if the triple
does not define a Windows target. It should make life easier if anyone
needs to port their Windows codes to elsewhere.
Differential Revision: http://reviews.llvm.org/D3034
llvm-svn: 206069
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MCDisassembler has an MCSymbolizer member that is meant to take care of
symbolizing during disassembly, but it also has several methods that enable the
disassembler to do symbolization internally (i.e. without an attached symbolizer
object). There is no need for this duplication, but ARM64 had been making use of
it. This patch moves the ARM64 symbolization logic out of ARM64Disassembler and
into an ARM64ExternalSymbolizer class, and removes the duplicated MCSymbolizer
functionality from the MCDisassembler interface. Symbolization will now be
done exclusively through MCSymbolizers.
There should be no impact on disassembly for any platform, but this allows us to
tidy up the MCDisassembler interface and simplify the process of (and invariants
related to) disassembler setup.
llvm-svn: 206063
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When rematerializing an instruction that defines a super register that would be
used by a physical subregisters we use the related physical super register for
the definition.
To keep the live-range information accurate, all the defined subregisters must be
marked as dead def, otherwise the register allocation may miss some
interferences.
Working on a reduced test-case!
<rdar://problem/16582185>
llvm-svn: 206060
|
| |
|
|
|
|
|
| |
Better match what is done for VOPC to eventually
prefer selecting these.
llvm-svn: 206048
|
| |
|
|
|
|
| |
This fixes a regression from r205076.
llvm-svn: 206047
|
| |
|
|
| |
llvm-svn: 206046
|
| |
|
|
|
|
| |
ashr <N x iM>, <N x iM> M -> undef
llvm-svn: 206045
|
| |
|
|
|
|
|
| |
+ vim 'fixed' line endings in json_value.cpp
Contributed-by: Johannes Doerfert <doerfert@cs.uni-saarland.de>
llvm-svn: 206044
|
| |
|
|
|
|
| |
otherwise reports get intermixed
llvm-svn: 206043
|
| |
|
|
|
|
|
|
| |
so DwarfDebug::emitDebugLocEntry can emit them with the correct signedness.
rdar://problem/15928306
llvm-svn: 206042
|
| |
|
|
|
|
|
| |
This seems generally useful, and makes sense to
go along with SplitVector.
llvm-svn: 206041
|
| |
|
|
|
|
|
|
| |
location ID.
Patch from Vyacheslav Karpukhin.
llvm-svn: 206040
|
| |
|
|
|
|
|
| |
This avoids the overhead of specifying all the traversal code when using
ConstStmtVisitor and makes it a lot easier to maintain this.
llvm-svn: 206039
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 206038
|
| |
|
|
|
|
|
|
| |
The TargetLowering::expandMUL() helper contains lowering code extracted
from the DAGTypeLegalizer and allows the SelectionDAGLegalizer to expand more
ISD::MUL patterns without having to use a library call.
llvm-svn: 206037
|
| |
|
|
|
|
|
|
|
|
|
| |
This code has been moved to a new function in the TargetLowering
class called expandMUL(). The purpose of this is to be able
to share lowering code between the SelectionDAGLegalize and
DAGTypeLegalizer classes.
No functionality changed intended.
llvm-svn: 206036
|
| |
|
|
|
|
|
| |
the new optimizations break when thread ids gets reused (clocks go backwards)
add the necessary tests as well
llvm-svn: 206035
|
| |
|
|
|
|
|
| |
ocassionally we see races coming from symbolizer interceptors (e.g. memcmp)
reproducible only only on large complex programs
llvm-svn: 206034
|
| |
|
|
|
|
|
|
| |
asserts. Seems it doesn't fail with -Asserts.
This was most likely caused by an uninitialized value and the relevant code was re-written in r205292. Reverting to see if it still fails on any of the buildbots.
llvm-svn: 206033
|
| |
|
|
|
|
|
|
| |
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/2959
The location string is returned as a std::string, not a StringRef.
llvm-svn: 206032
|
| |
|
|
| |
llvm-svn: 206031
|
| |
|
|
| |
llvm-svn: 206030
|
| |
|
|
|
|
|
| |
We will need this to correctly handle conflict markers inside macro
definitions.
llvm-svn: 206029
|
| |
|
|
| |
llvm-svn: 206028
|
| |
|
|
|
| |
Review: http://reviews.llvm.org/D3335
llvm-svn: 206027
|
| |
|
|
|
|
|
|
|
| |
We only supported a very old version of OpenScop that was entirely different
to what OpenScop is today. To not confuse people, we remove this old and
unusable support. If anyone is interested to add OpenScop support back in,
the relevant patches are available in version control.
llvm-svn: 206026
|
| |
|
|
|
|
| |
Potapenko for pointing this out.
llvm-svn: 206024
|
| |
|
|
|
|
|
|
| |
function.
No functional changes.
llvm-svn: 206023
|
| |
|
|
|
|
|
|
|
| |
StringRef before calling the createSectionAtom() method and reverse
conversion inside the method.
No functional changes.
llvm-svn: 206022
|
| |
|
|
|
|
|
| |
This treats binary conditional operators in the same way as ternary
conditional operators for instrumentation based profiling.
llvm-svn: 206021
|
| |
|
|
| |
llvm-svn: 206020
|
| |
|
|
| |
llvm-svn: 206019
|
| |
|
|
| |
llvm-svn: 206018
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch implements support for both relocation record formats: Elf_Rel
and Elf_Rela. It is possible to define relocation against symbol only.
Relocations against sections will be implemented later. Now yaml2obj
recognizes X86_64, MIPS and Hexagon relocation types.
Example of relocation section specification:
Sections:
- Name: .text
Type: SHT_PROGBITS
Content: "0000000000000000"
AddressAlign: 16
Flags: [SHF_ALLOC]
- Name: .rel.text
Type: SHT_REL
Info: .text
AddressAlign: 4
Relocations:
- Offset: 0x1
Symbol: glob1
Type: R_MIPS_32
- Offset: 0x2
Symbol: glob2
Type: R_MIPS_CALL16
The patch reviewed by Michael Spencer, Sean Silva, Shankar Easwaran.
llvm-svn: 206017
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also updated as many loops as I could find using df_begin/idf_begin -
strangely I found no uses of idf_begin. Is that just used out of tree?
Also a few places couldn't use df_begin because either they used the
member functions of the depth first iterators or had specific ordering
constraints (I added a comment in the latter case).
Based on a patch by Jim Grosbach. (Jim - you just had iterator_range<T>
where you needed iterator_range<idf_iterator<T>>)
llvm-svn: 206016
|
| |
|
|
| |
llvm-svn: 206015
|
| |
|
|
| |
llvm-svn: 206014
|
| |
|
|
| |
llvm-svn: 206013
|
| |
|
|
|
|
| |
Thanks dblaikie for the suggestion!
llvm-svn: 206012
|
| |
|
|
|
|
|
|
|
|
|
| |
declaration is not visible. Previously we didn't find hidden friend names in
this redeclaration lookup, because we forgot to treat it as a redeclaration
lookup. Conversely, we did find some local extern names, but those don't
actually conflict with a namespace-scope using declaration, because the only
conflicts we can get are scope conflicts, not conflicts due to the entities
being members of the same namespace.
llvm-svn: 206011
|