| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Inadvertently commited...
This reverts commit e618ec93786d99df2ddf280ad2d5e02f5516cecf.
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266215
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
To be able to work accurately on the reference graph when taking decision
about internalizing, promoting, renaming, etc. We need to have the alias
information explicit.
Reviewers: tejohnson
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D18836
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266214
|
|
|
|
|
|
| |
Dtrace is implemented to try and minimize performance impact on the process being traced. This results in dtrace dropping samples if it is taking too many CPU resources. Multi-threading dtrace increases the sample drop rate dramatically.
llvm-svn: 266213
|
|
|
|
|
|
|
|
| |
Although all the registers are actually 32-bits, I think we have to assume the
high 32-bits could be RES0 (the ARM ARM is unclear). If so, reading as a 32-bit
register can require extra zero extension operations.
llvm-svn: 266212
|
|
|
|
|
|
|
|
|
|
| |
We've already paid the price for separate "armv7m" and "armv7em" slices
(support in other tools), it's silly to make them identical other than the
default CPU.
rdar://23055688
llvm-svn: 266211
|
|
|
|
|
| |
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266210
|
|
|
|
| |
llvm-svn: 266209
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This simplifies the code by allowing us to remove the visibility argument
to functions that create synthetic symbols.
The only functional change is that the visibility of the MIPS "_gp" symbol
is now hidden. Because this symbol is defined in every executable or DSO, it
would be difficult to observe a visibility change here.
Differential Revision: http://reviews.llvm.org/D19033
llvm-svn: 266208
|
|
|
|
| |
llvm-svn: 266207
|
|
|
|
|
|
|
|
| |
These are unpredictable even on AArch64.
Patch by Yichao Yu.
llvm-svn: 266206
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TBA/TMA)git status
Tests added along with implemented feature.
Note that there is a small leftover of unecessary MI sheduling issue
(more info in the review). CodeGen/AMDGPU/salu-to-valu.ll updated to fix
the false regression.
TODO: Support for TTMP quads, comma-separated syntax in "[]" and more.
Differential Revision: http://reviews.llvm.org/D17825
llvm-svn: 266205
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D18995
llvm-svn: 266204
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
values.
Summary:
This is a special case for MIPS64 because the architecture requires
properly 32-bit sign-extended values in the register containers.
Additionaly, we merge consecutive trunc + AssertZExt nodes in order
to avoid unnecessary sign-extensions when the extension comes from a
type smaller than i32.
Reviewers: dsanders
Subscribers: dsanders, sdardis, llvm-commits
Differential Revision: http://reviews.llvm.org/D18893
llvm-svn: 266203
|
|
|
|
|
|
|
|
| |
pmovs{d|q}{b|w|d}{128|256|512} instruction set
Differential Revision: http://reviews.llvm.org/D19023
llvm-svn: 266202
|
|
|
|
|
|
|
| |
http://lab.llvm.org:8011/builders/clang-s390x-linux/builds/3255
http://lab.llvm.org:8011/builders/clang-ppc64be-linux/builds/3517
llvm-svn: 266201
|
|
|
|
|
|
|
|
| |
Patch by Li Huang (li1.huang@intel.com)
Differential Revision: http://reviews.llvm.org/D18230
llvm-svn: 266200
|
|
|
|
|
|
|
|
| |
functions are annotated with nothrow and pure attribute, which enables better optimization.
Patch by Taewook Oh.
llvm-svn: 266199
|
|
|
|
|
|
|
| |
Patch make clang to perform analysis for task-based directives also for
taskloop-based directives.
llvm-svn: 266198
|
|
|
|
| |
llvm-svn: 266197
|
|
|
|
| |
llvm-svn: 266196
|
|
|
|
|
|
|
|
|
| |
VPBROADCASTB/W/D/Q instruction set
Differential Revision: http://reviews.llvm.org/D19012
llvm-svn: 266195
|
|
|
|
| |
llvm-svn: 266194
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes calculating of builtin_object_size if it depends on a
condition. Before this patch compiler did not know how to calculate the
object size when it finds a condition that cannot be eliminated.
This patch enables calculating of builtin_object_size even in case when
condition cannot be eliminated by choosing minimum or maximum value as a
result from condition. Choosing minimum or maximum value from condition
is based on the second argument of __builtin_object_size function.
Patch by Strahinja Petrovic.
Differential Revision: http://reviews.llvm.org/D18438
llvm-svn: 266193
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
result_formatter used inspect.getfile() to get the python file name, which returned "*.pyc" if
the bytecode file was present. This resulted in files being displayed with the wrong extension,
and more critically, would confuse the rerun logic because it would try to rerun the pyc file
(which resulted in an empty rerun list as unittest refused to run those).
Fix: use inspect.getsourcefile() instead.
I am not sure why does was not an issue before. I can only assume that some system update
tricked python into producing bytecode files more aggressively.
llvm-svn: 266192
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
variable.
Summary: Added the remaining features needed to satisfy C++ Core Guideline Type.6: Always initialize a member variable to cppcoreguidelines-pro-type-member-init. The check now flags all default-constructed uses of record types without user-provided default constructors that would leave their memory in an undefined state. The check suggests value initializing them instead.
Reviewers: flx, alexfh, aaron.ballman
Subscribers: klimek, aaron.ballman, LegalizeAdulthood, cfe-commits
Patch by Michael Miller!
Differential Revision: http://reviews.llvm.org/D18584
llvm-svn: 266191
|
|
|
|
|
|
|
|
|
|
|
| |
Checks if constructors and assignment operators that are marked '= default' are
actually deleted by the compiler.
Patch by Alex Pilkiewicz!
Differential Revision: http://reviews.llvm.org/D18961
llvm-svn: 266190
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CXXMethodDecl::isUserProvided.
Summary: Added two AST matchers: isDelegatingConstructor for CXXConstructorDecl::IsDelegatingConstructor; and isUserProvided corresponding to CXXMethodDecl::isUserProvided.
Reviewers: aaron.ballman, alexfh
Subscribers: klimek, cfe-commits
Patch by Michael Miller!
Differential Revision: http://reviews.llvm.org/D19038
llvm-svn: 266189
|
|
|
|
|
|
|
|
| |
cvt{b|d|q}2mask{128|256|512} and cvtmask2{b|d|q}{128|256|512} instruction set.
Differential Revision: http://reviews.llvm.org/D19009
llvm-svn: 266188
|
|
|
|
| |
llvm-svn: 266187
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch corresponds to review:
http://reviews.llvm.org/D15120
It adds support for the __float128 keyword, literals and a target feature to
enable it. This support is disabled by default on all targets and any target
that has support for this type is free to add it.
Based on feedback that I've received from target maintainers, this appears to
be the right thing for most targets. I have not heard from the maintainers of
X86 which I believe supports this type. I will subsequently investigate the
impact of enabling this on X86.
llvm-svn: 266186
|
|
|
|
| |
llvm-svn: 266185
|
|
|
|
| |
llvm-svn: 266184
|
|
|
|
| |
llvm-svn: 266183
|
|
|
|
| |
llvm-svn: 266182
|
|
|
|
|
|
|
|
| |
module name
+ updated formatting
llvm-svn: 266181
|
|
|
|
|
|
|
|
|
|
| |
Putting OpenCLImageTypes.def to clangAST library violates layering requirement: "It's not OK for a Basic/ header to include an AST/ header".
This fixes the modules build.
Differential revision: http://reviews.llvm.org/D18954
Reviewers: Richard Smith, Vassil Vassilev.
llvm-svn: 266180
|
|
|
|
|
|
|
|
|
|
|
|
| |
DDIVU and DMODU instructions
Differential Revision: http://reviews.llvm.org/D17137
This patch was reverted after the revertion of dependant patch http://reviews.llvm.org/D17068.
There was the problem with test-suite failure.
The problem is hopefully solved with dependant patch so this patch is commited again.
llvm-svn: 266179
|
|
|
|
| |
llvm-svn: 266178
|
|
|
|
|
|
| |
[-Wdocumentation]
llvm-svn: 266177
|
|
|
|
|
|
| |
to llvm-bcanalyzer output.
llvm-svn: 266176
|
|
|
|
|
|
|
|
|
| |
Remove an ad-hoc transform in InstCombine and replace it with more
general machinery (ValueTracking, InstructionSimplify and VectorUtils).
This fixes PR27332.
llvm-svn: 266175
|
|
|
|
|
|
|
|
|
| |
It is now only doing the update to the llvm.compiler_used global.
The client has to call separately the internalization stage.
Hopefully the code is simpler to understand this way.
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266174
|
|
|
|
|
| |
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266173
|
|
|
|
|
|
|
| |
search query for each function
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266172
|
|
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17068
This changes contains fix for failing test-suite. So, this patch should hopefully work now.
llvm-svn: 266171
|
|
|
|
|
|
|
| |
This is not really related to internalization per se.
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266170
|
|
|
|
|
| |
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266169
|
|
|
|
|
| |
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266168
|
|
|
|
|
|
|
|
|
|
| |
public free function (NFC)
There is really no reason to require to instanciate a pass manager to
internalize.
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266167
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
intrinsics and fix incorrect testcases with minor refactoring
New added data types:
vector double vec_vsx_ld (int, const double *);
vector float vec_vsx_ld (int, const float *);
vector bool short vec_vsx_ld (int, const vector bool short *);
vector bool int vec_vsx_ld (int, const vector bool int *);
vector signed int vec_vsx_ld (int, const signed int *);
vector unsigned int vec_vsx_ld (int, const unsigned int *);
void vec_vsx_st (vector double, int, double *);
void vec_vsx_st (vector float, int, float *);
void vec_vsx_st (vector bool short, int, vector bool short *);
void vec_vsx_st (vector bool short, int, signed short *);
void vec_vsx_st (vector bool short, int, unsigned short *);
void vec_vsx_st (vector bool int, int, vector bool int *);
void vec_vsx_st (vector bool int, int, signed int *);
void vec_vsx_st (vector bool int, int, unsigned int *);
Also fix testcases which use non-vector argument version of vec_vsx_ld or
vec_vsx_st, but pass incorrect parameter.
llvm-svn: 266166
|