David Blaikie
1e58b463d9
Remove unused private fields to fix the clang -Werror build.
...
llvm-svn: 291201
2017-01-06 00:48:24 +00:00
David Blaikie
e9c678cfca
Fixes for Clang API changes to use std::shared_ptr
...
llvm-svn: 291200
2017-01-06 00:38:12 +00:00
David Blaikie
73902cc0ac
Fix -Wunused-function warning by preprocessor conditionalizing the function the same way as the caller
...
llvm-svn: 291199
2017-01-06 00:38:10 +00:00
David Blaikie
a322f36cfd
Make lldb -Werror clean for -Wstring-conversion
...
Also found/fixed one bug identified by this warning in
RenderScriptx86ABIFixups.cpp where a string literal was being used in an
effort to provide a name for an instruction/register, but was instead
being passed as the bool 'isVolatile' parameter.
llvm-svn: 291198
2017-01-06 00:38:06 +00:00
Eugene Zelenko
049b017538
[AArch64, Lanai] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC).
...
llvm-svn: 291197
2017-01-06 00:30:53 +00:00
David Majnemer
eaba06cffa
[SelectionDAG] Correctly transform range metadata to AssertZExt
...
We used the logBase2 of the high instead of the ceilLogBase2 resulting
in the wrong result for certain values. For example, it resulted in an
i1 AssertZExt when the exclusive portion of the range was 3.
llvm-svn: 291196
2017-01-06 00:11:46 +00:00
Kostya Serebryany
61f5473bad
[libFuzzer] remove dead code, NFC
...
llvm-svn: 291195
2017-01-06 00:09:40 +00:00
Greg Clayton
93e4fe8aad
Add iterator support to DWARFDie to allow child DIE iteration.
...
Differential Revision: https://reviews.llvm.org/D28303
llvm-svn: 291194
2017-01-05 23:47:37 +00:00
Logan Chien
ce542eefe3
Code cleanup: Remove tab indents.
...
llvm-svn: 291193
2017-01-05 23:41:33 +00:00
Saleem Abdulrasool
caabc1be3b
config_elast: fix typo (NFC)
...
Missed the original typo which was duplicated. NFC.
llvm-svn: 291192
2017-01-05 23:25:44 +00:00
Richard Smith
c8a32e5ed2
Fix bug where types other than 'cv auto', 'cv auto &', and 'cv auto &&' could
...
incorrectly be deduced from an initializer list in pathological cases.
llvm-svn: 291191
2017-01-05 23:12:16 +00:00
Richard Smith
c92d206ce4
Add missing "original call argument has same type as deduced parameter type"
...
check for deductions from elements of a braced-init-list.
llvm-svn: 291190
2017-01-05 23:02:44 +00:00
Tim Shen
1594e0629d
[APFloatTest] Add tests for various operations
...
Differential Revision: https://reviews.llvm.org/D27833
llvm-svn: 291189
2017-01-05 22:57:54 +00:00
Sean Fertile
222626564d
Remove the ppc insertword/extractword expected fail tests.
...
llvm-svn: 291188
2017-01-05 22:54:34 +00:00
Simon Pilgrim
aa186c632d
[CostModel][X86] Tidyup arithmetic costs code. NFCI.
...
Remove unnecessary braces, remove one use variables and keep LUTs to similar naming convention.
llvm-svn: 291187
2017-01-05 22:48:02 +00:00
David Blaikie
d02498c6ad
Fix for shared_ptrification in Clang
...
llvm-svn: 291186
2017-01-05 22:44:07 +00:00
David Blaikie
bbe146f226
Fix examples for recent shared_ptrification
...
llvm-svn: 291185
2017-01-05 22:36:44 +00:00
David Blaikie
9280a857bc
IntrusiveRefCntPtr -> std::shared_ptr for CompilerInvocationBase and CodeCompleteConsumer
...
llvm-svn: 291184
2017-01-05 22:19:11 +00:00
Evgeniy Stepanov
04cfed9af5
Improved ASAN allocator and quarantine stats.
...
Summary: Improved ASAN allocator and quarantine stats.
Reviewers: eugenis
Patch by Alex Shlyapnikov.
Subscribers: llvm-commits, kubabrecka
Differential Revision: https://reviews.llvm.org/D28333
llvm-svn: 291183
2017-01-05 22:17:53 +00:00
Kostya Serebryany
4aa0590e33
[libFuzzer] improve error handling during the merge (handle various IO failures)
...
llvm-svn: 291182
2017-01-05 22:05:47 +00:00
Geoff Berry
d46b6e8096
[AArch64] Fold some filled/spilled subreg COPYs
...
Summary:
Extend AArch64 foldMemoryOperandImpl() to handle folding spills of
subreg COPYs with read-undef defs like:
%vreg0:sub_32<def,read-undef> = COPY %WZR; GPR64:%vreg0
by widening the spilled physical source reg and generating:
STRXui %XZR <fi#0>
as well as folding fills of similar COPYs like:
%vreg0:sub_32<def,read-undef> = COPY %vreg1; GPR64:%vreg0, GPR32:%vreg1
by generating:
%vreg0:sub_32<def,read-undef> = LDRWui <fi#0>
Reviewers: MatzeB, qcolombet
Subscribers: aemerson, rengolin, mcrosier, llvm-commits
Differential Revision: https://reviews.llvm.org/D27425
llvm-svn: 291180
2017-01-05 21:51:42 +00:00
Sean Fertile
96d9e0ec05
Add vec_insert4b and vec_extract4b functions to altivec.h
...
Add builtins for the functions and custom codegen mapping the builtins to their
corresponding intrinsics and handling the endian related swapping.
https://reviews.llvm.org/D26546
llvm-svn: 291179
2017-01-05 21:43:30 +00:00
Xin Tong
8b8a600d92
Fix typo. NFC
...
llvm-svn: 291178
2017-01-05 21:40:08 +00:00
Teresa Johnson
6c475a7595
ThinLTO: add early "dead-stripping" on the Index
...
Summary:
Using the linker-supplied list of "preserved" symbols, we can compute
the list of "dead" symbols, i.e. the one that are not reachable from
a "preserved" symbol transitively on the reference graph.
Right now we are using this information to mark these functions as
non-eligible for import.
The impact is two folds:
- Reduction of compile time: we don't import these functions anywhere
or import the function these symbols are calling.
- The limited number of import/export leads to better internalization.
Patch originally by Mehdi Amini.
Reviewers: mehdi_amini, pcc
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D23488
llvm-svn: 291177
2017-01-05 21:34:18 +00:00
Vitaly Buka
8f05c786c9
[compiler-rt] Set valid PC calling __asan_report_error SetErrorReportCallbackTest
...
Reviewers: eugenis
Subscribers: kubabrecka, dberris, llvm-commits
Differential Revision: https://reviews.llvm.org/D28376
llvm-svn: 291176
2017-01-05 21:25:21 +00:00
Vitaly Buka
e40277987f
[compiler-rt] Make macros use __sanitizer::uptr instead of just uptr.
...
Summary: This allows to use macros outside of __sanitizer namespace
Reviewers: eugenis
Subscribers: kubabrecka, dberris, llvm-commits
Differential Revision: https://reviews.llvm.org/D28375
llvm-svn: 291175
2017-01-05 21:25:20 +00:00
Saleem Abdulrasool
9075622d58
typeinfo: style adjustments for adding MS ABI RTTI
...
This is motivated by adding a third RTTI scheme to libc++. Split out
the two forms of the itanium RTTI representation. This is based on
suggestions from Eric Fiselier. NFC
llvm-svn: 291174
2017-01-05 21:22:22 +00:00
Vitaly Buka
006aaaf59c
[asan] Fix comparison in BufferedStackTrace::LocatePcInTrace
...
Summary:
Debug builds can have larger distance between stack trace and PC on that stack.
If we assume that PC is always correct we can snap it to the nearest trace.
Reviewers: eugenis
Subscribers: llvm-commits, kubabrecka
Differential Revision: https://reviews.llvm.org/D28342
llvm-svn: 291173
2017-01-05 21:04:47 +00:00
Joerg Sonnenberger
83963995c6
PR 31534: When emitting both DWARF unwind tables and debug information,
...
do not use .cfi_sections. This requires checking if any non-declaration
function in the module needs an unwind table.
llvm-svn: 291172
2017-01-05 20:55:28 +00:00
Michael Kuperstein
c9acad12e9
[LICM] Allow promotion of some stores that are not guaranteed to execute.
...
Promotion is always legal when a store within the loop is guaranteed to execute.
However, this is not a necessary condition - for promotion to be memory model
semantics-preserving, it is enough to have a store that dominates every exit
block. This is because if the store dominates every exit block, the fact the
exit block was executed implies the original store was executed as well.
Differential Revision: https://reviews.llvm.org/D28147
llvm-svn: 291171
2017-01-05 20:42:06 +00:00
Richard Smith
9c0c98604a
If an explicitly-specified pack might have been extended by template argument
...
deduction, don't forget to check the argument is valid.
llvm-svn: 291170
2017-01-05 20:27:28 +00:00
Matthias Braun
1172332203
CodeGen: Assert that liveness is up to date when reading block live-ins.
...
Add an assert that checks whether liveins are up to date before they are
used.
- Do not print liveins into .mir files anymore in situations where they
are out of date anyway.
- The assert in the RegisterScavenger is superseded by the new one in
livein_begin().
- Skip parts of the liveness updating logic in IfConversion.cpp when
liveness isn't tracked anymore (just enough to avoid hitting the new
assert()).
Differential Revision: https://reviews.llvm.org/D27562
llvm-svn: 291169
2017-01-05 20:01:19 +00:00
Evgeniy Stepanov
e8e11eb726
Revert "Reapply r291025 ("AMDGPU: Remove unneccessary intermediate vector")"
...
Summary: This reverts commit r291144. It breaks build bots.
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-autoconf/builds/3270 , http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fuzzer/builds/2058
lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp:1638:12: error: could not convert ‘(const unsigned int*)(& Variants)’ from ‘const unsigned int*’ to ‘llvm::ArrayRef<unsigned int>’
return Variants;
Reviewers: eugenis, tstellarAMD
Patch by Alex Shlyapnikov.
Subscribers: arsenm, kzhuravl, wdng, nhaehnle, yaxunl, tony-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D28372
llvm-svn: 291168
2017-01-05 19:51:13 +00:00
David Blaikie
22105e1ea4
Move SerializedDiagnosticPrinter's SharedState to std::shared_ptr rather than IntrusiveRefCntPtr
...
llvm-svn: 291167
2017-01-05 19:48:10 +00:00
David Blaikie
41565463bd
Move Preprocessor over to std::shared_ptr rather than IntrusiveRefCntPtr
...
llvm-svn: 291166
2017-01-05 19:48:07 +00:00
Simon Pilgrim
4c050c2190
[CostModel][X86] Move vXi32 MUL costs into existing tables. NFCI.
...
llvm-svn: 291165
2017-01-05 19:42:43 +00:00
Simon Pilgrim
6f72eba606
Remove trailing whitespace. NFCI.
...
llvm-svn: 291163
2017-01-05 19:24:25 +00:00
Simon Pilgrim
5b06e4d319
[CostModel][X86] Reordered SSE42 arithmetic cost LUT into descending order. NFCI.
...
llvm-svn: 291162
2017-01-05 19:19:39 +00:00
David Blaikie
e304168853
Move PreprocessorOptions to std::shared_ptr from IntrusiveRefCntPtr
...
llvm-svn: 291160
2017-01-05 19:11:36 +00:00
David Blaikie
f95113dacf
Move FailedModulesSet over to shared_ptr from IntrusiveRefCntPtr
...
llvm-svn: 291159
2017-01-05 19:11:31 +00:00
Simon Pilgrim
a8bf97569a
[CostModel][X86] Move vXi64 MUL costs into existing tables. NFCI.
...
Removes need for yet another LUT.
llvm-svn: 291158
2017-01-05 19:01:50 +00:00
Andrew Kaylor
7353cf4623
[LICM] Small update to note changes made in hoistRegion
...
Differential Revision: https://reviews.llvm.org/D28363
llvm-svn: 291157
2017-01-05 18:53:24 +00:00
David Blaikie
feaf9d1463
Move VariantMatcher's Payload to std::shared_ptr rather than IntrusiveRefCntPtr
...
llvm-svn: 291156
2017-01-05 18:51:54 +00:00
David Blaikie
95dd362c77
Simplify ASTReader ctor by using in-class initializers for many member variables
...
llvm-svn: 291155
2017-01-05 18:45:45 +00:00
David Blaikie
9d7c1ba5cf
Simplify ASTReader ctor by using in-class initializers (NSDMIs to the rest of you) for many member variables
...
llvm-svn: 291154
2017-01-05 18:45:43 +00:00
Simon Pilgrim
430d34fc14
[CostModel][X86] Strip unused 256-bit vector shift costs. NFCI.
...
Remove SSE2 256-bit entries - AVX targets will have used the SSE42 costs instead.
llvm-svn: 291152
2017-01-05 18:36:48 +00:00
Sanjay Patel
686527c1e0
[x86] add test to show bug in select lowering; NFC
...
llvm-svn: 291151
2017-01-05 18:35:44 +00:00
David Blaikie
61137e1a50
Use shared_ptr instead of IntrusiveRefCntPtr for ModuleFileExtension
...
The intrusiveness wasn't needed here, so this simplifies/clarifies the
ownership model.
llvm-svn: 291150
2017-01-05 18:23:18 +00:00
Simon Pilgrim
b01e844241
[CostModel][X86] Include the cost of 256-bit upper subvector extract/insertion in AVX1 v4i64 MUL
...
Matches other MUL/ADD/SUB 256-bit case on AVX1
llvm-svn: 291149
2017-01-05 18:20:25 +00:00
Joerg Sonnenberger
e9987a1d2f
Typo
...
llvm-svn: 291148
2017-01-05 17:59:44 +00:00