| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 247360
|
| |
|
|
| |
llvm-svn: 247359
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
extension in name
When the driver tries to locate a program by its name, e.g. a linker, it
scans the paths provided by the toolchain using the ScanDirForExecutable
function. If the lookup fails, the driver uses
llvm::sys::findProgramByName. Unlike llvm::sys::findProgramByName,
ScanDirForExecutable is not aware of file extensions. If the program has
the "exe" extension in its name, which is very common on Windows,
ScanDirForExecutable won't find it under the toolchain-provided paths.
This patch changes the Windows version of the "`can_execute`" function
called by ScanDirForExecutable to respect file extensions, similarly to
llvm::sys::findProgramByName.
Patch by Oleg Ranevskyy
Reviewers: rnk
Differential Revision: http://reviews.llvm.org/D12711
llvm-svn: 247358
|
| |
|
|
|
|
| |
small. NFC.
llvm-svn: 247357
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
arguments at callsite
Summary: This patch replaces isKnownNonNull() with isKnownNonNullAt() when checking nullness of passing arguments at callsite. In this way it can handle cases where the argument does not have nonnull attribute but has a dominating null check from the CFG.
Reviewers: reames
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D12779
llvm-svn: 247356
|
| |
|
|
|
|
| |
This is in preparation to adding a dynamic string table.
llvm-svn: 247355
|
| |
|
|
| |
llvm-svn: 247354
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
return value
Summary: This patch replaces isKnownNonNull() with isKnownNonNullAt() when checking nullness of gc.relocate return value. In this way it can handle cases where the relocated value does not have nonnull attribute but has a dominating null check from the CFG.
Reviewers: reames
Subscribers: llvm-commits, sanjoy
Differential Revision: http://reviews.llvm.org/D12772
llvm-svn: 247353
|
| |
|
|
| |
llvm-svn: 247352
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This fixs the bug
https://llvm.org/bugs/show_bug.cgi?id=12587
Patch by Yunlian Jiang
Reviewers: Bigcheese, rnk
Differential Revision: http://reviews.llvm.org/D10279
llvm-svn: 247351
|
| |
|
|
|
|
| |
rdar://6198039
llvm-svn: 247350
|
| |
|
|
|
|
|
| |
Cleanupendpad is a lot like catchendpad, so we can reuse the same
EHScopeStack type.
llvm-svn: 247349
|
| |
|
|
|
|
|
|
| |
The Win32 EH runtime caller does not preserve EBP, even though it does
preserve the CSRs (EBX, ESI, EDI) for us. The result was that each
finally funclet call would leave the frame pointer off by 12 bytes.
llvm-svn: 247348
|
| |
|
|
| |
llvm-svn: 247347
|
| |
|
|
|
|
|
| |
The type of a member pointer is incomplete if it has no inheritance
model. This lets us reuse more general logic already embedded in clang.
llvm-svn: 247346
|
| |
|
|
| |
llvm-svn: 247345
|
| |
|
|
| |
llvm-svn: 247344
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The (mostly-deprecated) SelectionDAG-based ILPListDAGScheduler scheduler
was making poor scheduling decisions, causing high register pressure and
extraneous register spills.
Switching to the newer machine scheduler generates better code -- even
without there being a machine model defined for SPARC yet.
(Actually committing the test changes too, this time, unlike r247315)
llvm-svn: 247343
|
| |
|
|
|
|
| |
While at it, optimize getOffset a bit.
llvm-svn: 247342
|
| |
|
|
|
|
|
| |
WinEHPrepare's new coloring algorithm really expects to see
cleanupendpads now, so Clang will start emitting them soon.
llvm-svn: 247341
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
shutdown
This only triggered when built in debug mode with OMPT enabled:
__kmp_wait_template expected the state of the current thread to be either
ompt_state_idle or ompt_state_wait_barrier{,_implicit,_explicit}.
Patch by Jonas Hahnfeld
Differential Revision: http://reviews.llvm.org/D12754
llvm-svn: 247339
|
| |
|
|
| |
llvm-svn: 247338
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch enables small size reductions in which the source types are smaller
than the reduction type (e.g., computing an i16 sum from the values in an i8
array). The previous behavior was to only allow small size reductions if the
source types and reduction type were the same. The change accounts for the fact
that the existing sign- and zero-extend instructions in these cases should
still be included in the cost model.
Differential Revision: http://reviews.llvm.org/D12770
llvm-svn: 247337
|
| |
|
|
|
|
| |
This functionality was accidentally left out of r247119.
llvm-svn: 247336
|
| |
|
|
|
|
|
|
|
|
|
| |
before any relocations have been applied, and again after all relocations have
been applied.
Previously each section was dumped before and after relocations targetting it
were applied, but this only shows the impact of relocations that point to other
symbols in the same section.
llvm-svn: 247335
|
| |
|
|
|
|
|
|
| |
warning on them having always_inline attribute for reasons I don't fully
understand -- static functions are just as inlinable as inline
functions in terms of linkage.
llvm-svn: 247334
|
| |
|
|
|
|
|
|
|
|
|
| |
This is a follow up to the hierarchy cleanup patch.
Added some clarifying comments to hierarchy_info.
Fixed a bug with the depth field not being updated cleanly during a resize.
Fixed resize to first check capacity as determined by maxLevels before actually doing the full resize.
Differential Revision: http://reviews.llvm.org/D12562
llvm-svn: 247333
|
| |
|
|
|
|
|
|
| |
It seems that there is small bug, and we can't generate assume loads
when some virtual functions have internal visibiliy
This reverts commit 982bb7d966947812d216489b3c519c9825cacbf2.
llvm-svn: 247332
|
| |
|
|
| |
llvm-svn: 247331
|
| |
|
|
|
|
|
|
| |
It was
/Writer.cpp:119:45: warning: enumeral and non-enumeral type in conditional expression
llvm-svn: 247330
|
| |
|
|
|
|
| |
directories to make things more clear.
llvm-svn: 247329
|
| |
|
|
|
|
|
|
| |
This reverts commit r247315.
Accidentally omitted test changes; will resubmit full change shortly.
llvm-svn: 247328
|
| |
|
|
|
|
| |
codegen test.
llvm-svn: 247327
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some of this is improvement to code suggested by Hal Finkel. Four changes here:
1.Cleanup of hierarchy code to handle all hierarchy cases whether affinity is available or not
2.Separated this and other classes and common functions out to a header file
3.Added a destructor-like fini function for the hierarchy (and call in __kmp_cleanup)
4.Remove some redundant code that is hopefully no longer needed
Differential Revision: http://reviews.llvm.org/D12449
llvm-svn: 247326
|
| |
|
|
|
|
|
| |
Specifically, only run the cfi-icall tests on x86/x86_64, and add
an XFAIL for darwin.
llvm-svn: 247325
|
| |
|
|
| |
llvm-svn: 247324
|
| |
|
|
|
|
| |
Patch from Eugene Zelenko!
llvm-svn: 247323
|
| |
|
|
|
|
|
|
| |
The exact semantics of 'catchpad' are really in the hands of the
personality routine so we shouldn't assume that they have no side
effects.
llvm-svn: 247322
|
| |
|
|
|
|
| |
don't have dfsan and don't support weak functions
llvm-svn: 247321
|
| |
|
|
|
|
|
|
|
|
| |
The fix is to make b_arrived flag 64 bit in both structures - kmp_balign_team_t
and kmp_balign_t. Otherwise when flag in kmp_balign_team_t wrapped over
UINT_MAX the library hangs.
Differential Revision: http://reviews.llvm.org/D12563
llvm-svn: 247320
|
| |
|
|
| |
llvm-svn: 247319
|
| |
|
|
|
|
| |
Also add tests for SEH with the new IRGen.
llvm-svn: 247318
|
| |
|
|
|
|
|
|
| |
Link in and internalize the symbols we need from supplied bitcode library.
Differential Revision: http://reviews.llvm.org/D11664
llvm-svn: 247317
|
| |
|
|
|
|
|
|
| |
This is required because ExternalProject_Add requires all targets specified in the DEPENDS argument must exist before calling ExternalProject_Add.
I have a follow-up patch to clang that enables using the just-built libLTO in bootstrap builds, so we need to be able to add the LTO target as a dependency in clang.
llvm-svn: 247316
|
| |
|
|
|
|
|
|
|
|
|
| |
The (mostly-deprecated) SelectionDAG-based ILPListDAGScheduler scheduler
was making poor scheduling decisions, causing high register pressure and
extraneous register spills.
Switching to the newer machine scheduler generates better code -- even
without there being a machine model defined for SPARC yet.
llvm-svn: 247315
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch addresses the issue of SCEV division asserting on some
input expressions (e.g., non-affine expressions) and quietly giving
up on others. When giving up, we set the quotient to be equal to
zero and the remainder to be equal to the numerator. With this
patch, we always quietly give up when we cannot perform the
division.
This patch also adds a test case for DependenceAnalysis that
previously caused an assertion.
Differential Revision: http://reviews.llvm.org/D11725
llvm-svn: 247314
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change correctly sets the attributes on the callsites
generated in thunks. This makes sure things such as sret, sext, etc.
are correctly set, so that the call can be a proper tailcall.
Also, the transfer of attributes in the replaceDirectCallers function
appears to be unnecessary, but until this is confirmed it will remain.
Author: jrkoenig
Reviewers: dschuff, jfb
Subscribers: llvm-commits, nlewycky
Differential revision: http://reviews.llvm.org/D12581
llvm-svn: 247313
|
| |
|
|
| |
llvm-svn: 247312
|
| |
|
|
|
|
|
|
| |
Fix-up for r247305 to use the right variable. There's another use of
LLVM_SOURCE_DIR in this file that is probably also questionable, but it's
for Windows so I'm going to leave it alone.
llvm-svn: 247311
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Hoist runtime checks in the loop nest if they guard an "error" like event.
Such events are recognized as blocks with an unreachable terminator or a call
to the ubsan function that deals with out of bound accesses. Other "error"
events can be added easily.
We will ignore these blocks when we detect/model/optmize and code generate SCoPs
but we will make sure that they would not have been executed using the assumption
framework.
llvm-svn: 247310
|