| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Dyld never outlives MemMgr, just put both on the stack.
llvm-svn: 187697
|
| |
|
|
|
|
| |
Using an object to do the cleanup may look like overkill, but it's safer and nicer than putting deletes everywhere.
llvm-svn: 187696
|
| |
|
|
| |
llvm-svn: 187695
|
| |
|
|
|
|
| |
undefined element value to match IR capabilities.
llvm-svn: 187694
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Internally, the PowerPC backend names the 32-bit GPRs R[0-9]+, and names the
64-bit parent GPRs X[0-9]+. When matching inline assembly constraints with
explicit register names, on PPC64 when an i64 MVT has been requested, we need
to follow gcc's convention of using r[0-9]+ to refer to the 64-bit (parent)
registers.
At some point, we'll probably want to arrange things so that the generic code
in TargetLowering uses the AsmName fields declared in *RegisterInfo.td in order
to match these inline asm register constraints. If we do that, this change can
be reverted.
llvm-svn: 187693
|
| |
|
|
|
|
| |
Remove assertion that the verifier should catch.
llvm-svn: 187692
|
| |
|
|
| |
llvm-svn: 187690
|
| |
|
|
|
|
| |
Since LLVM r187675, this is handled by the option parsing code itself.
llvm-svn: 187689
|
| |
|
|
| |
llvm-svn: 187688
|
| |
|
|
| |
llvm-svn: 187687
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Recent versions of the OS X linker support this but follow the existing
OS X linker convention of using an underscore in the option name, i.e.,
-export_dynamic. Rather than changing our configure scripts to check for
that alternate spelling, it is simpler to just use the compiler's -rdynamic
option and let it deal with translating that to the appropriate linker
option. One potential disadvantage of this approach is that the compiler
will typically ignore -rdynamic on platforms where it is not supported, so
the HAVE_LINK_EXPORT_DYNAMIC in config.h will not necessarily show whether
that option has any effect or not. I don't see any in-tree uses of that
macro, so I'm assuming it is OK.
llvm-svn: 187686
|
| |
|
|
|
|
|
| |
This is for the benefit of those of us with inferior debuggers which
do not permit member function calls on value types.
llvm-svn: 187685
|
| |
|
|
|
|
|
| |
from 'id' result type when deciding on migration
to instancetype.
llvm-svn: 187684
|
| |
|
|
|
|
|
| |
Thanks to Hans' patch (r187675), OptTable now handles "--", so we don't
need this code in LLD.
llvm-svn: 187683
|
| |
|
|
|
|
|
|
| |
attribute list is ordered by index.
Differential Revision: http://llvm-reviews.chandlerc.com/D1265
llvm-svn: 187682
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The aim of this patch is to reduce the dependency from COFFDefinedAtom
to COFF structs defined in llvm/Object/COFF.h. Currently many attributes
of the atom are computed in the atom. That provide a simple interface but
does not work well in some cases.
There are some cases that the same type atom is created from different
parts of a COFF file. One example is the BSS atom, which can be created
from the defined symbol in the .bss section or from the undefined symbol.
Computing attributes from different sources in the atom complicates the
code. We should compute it outside the atom.
In the next patch, I'll move more code from Atoms.h to ReaderCOFF.cpp.
llvm-svn: 187681
|
| |
|
|
|
|
| |
Related to <rdar://problem/14578094>.
llvm-svn: 187680
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
> This adds a bunch of options to clang-cl. Notably, this includes
> all the options that get passed when doing a default build of a
> command-line project with msbuild.exe in Debug and Release modes,
> and I believe all flags from Reid's original patch.
The original commit was reverted in r187640 after it broke the Mac build.
This should now be fixed, by Clang r187668, LLVM r187675, and putting
a -- before %s in the test.
llvm-svn: 187679
|
| |
|
|
|
|
| |
Patch by Frank Miller.
llvm-svn: 187678
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The .drectve section contains linker command line options, and the linker is
expected to interpret them as if they were given via the command line. In this
patch, the command line parser in the driver is called from the object file
reader to parse the string.
I think this patch is important, because this is the first step towards mutable
TargetInfo. We had a discussion about that on llvm-commits mailing list before.
I haven't removed "const" from the function signature yet. Instead, I just use
cast to remove "const". This is a temporary aid for an experiment. If we don't
see any issue with this mutable TargetInfo appraoch, I'll change the function
signature, and rename the class LinkerContext from TargetInfo.
Reviewers: kledzik
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1246
llvm-svn: 187677
|
| |
|
|
|
|
|
|
|
| |
- pull out function to drill to the CXXRecordDecl from the type,
to allow recursive resolution
- make the analysis more robust by rather skipping values we don't
understand
llvm-svn: 187676
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Everything that comes after -- should be treated as a filename. This
enables passing in filenames that would otherwise be conflated with
command-line options.
This is especially important for clang-cl which supports options
starting with /, which are easily conflatable with Unix-style
path names.
Differential Revision: http://llvm-reviews.chandlerc.com/D1274
llvm-svn: 187675
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ExtractLoops function tries to reduce the failing test case by extracting
one or more loops from the misoptimized piece of the program. In doing this,
ExtractLoops must keep the MiscompiledFunctions vector up-to-date by ensuring
that the pointers refer to functions in the current failing program.
Unfortunately, this is not trivial because:
- ExtractLoops is iterative, and there are several early exits (and the
MiscompiledFunctions vector must be consistent with the current program at
every non-fatal exit point).
- Several of the utility functions used by ExtractLoops (such as
TestOptimizer, some of which are called through the TestFn callback
parameter, and Linker::LinkModules) delete their inputs upon success.
This change adds several updates of the MiscompiledFunctions vector at
different points. The first is after the initial call to TestMergedProgram
which checks that the loop-extracted program still works. The second is after
the call to TestFn (TestOptimizer, for example). This function will delete its
inputs (which is why the existing ExtractLoops logic cloned the inputs first).
llvm-svn: 187674
|
| |
|
|
|
|
|
|
| |
For an invalid input we should not call report_fatal_error(), because
when LLD is used as a library, we don't want to kill the whole app
because of a malformed input.
llvm-svn: 187673
|
| |
|
|
|
|
| |
methods which can be migrated to instancetype.
llvm-svn: 187672
|
| |
|
|
| |
llvm-svn: 187671
|
| |
|
|
|
|
| |
file error.
llvm-svn: 187670
|
| |
|
|
| |
llvm-svn: 187669
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We already reject flags that don't have the CC1Option flag,
but we would previously do so after parsing the command-line
arguments.
Since the option parser now has a parameter for excluding options,
we should just use that instead.
Differential Revision: http://llvm-reviews.chandlerc.com/D1270
llvm-svn: 187668
|
| |
|
|
| |
llvm-svn: 187667
|
| |
|
|
| |
llvm-svn: 187666
|
| |
|
|
| |
llvm-svn: 187665
|
| |
|
|
|
|
|
|
| |
the relocation site
Patch by Ron Ofir.
llvm-svn: 187664
|
| |
|
|
|
|
|
|
| |
come from different blocks.
Thanks Alexey Samsonov.
llvm-svn: 187663
|
| |
|
|
| |
llvm-svn: 187662
|
| |
|
|
|
|
| |
in my previous patch which was reverted in r187657
llvm-svn: 187661
|
| |
|
|
| |
llvm-svn: 187660
|
| |
|
|
|
|
| |
unordered_multimap. This wraps up debug mode for the unordered containers.
llvm-svn: 187659
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes the multiple breakages on ARM test-suite after the SLP
vectorizer was introduced by default on O3. The problem was an illegal
vector type on ARMTTI::getCmpSelInstrCost() <3 x i1> which is not simple.
The guard protects this code from breaking (cause of the problems) but
doesn't fix the issue that is generating the odd vector in the first
place, which also needs to be investigated.
llvm-svn: 187658
|
| |
|
|
|
|
| |
buildbot.
llvm-svn: 187657
|
| |
|
|
|
|
| |
secrel32 instead of long opcodes (only for coff). This makes them debuggable with GDB (with fix for 64bits msvc)
llvm-svn: 187656
|
| |
|
|
|
|
| |
Also removed check for "NS" prefix for class name.
llvm-svn: 187655
|
| |
|
|
| |
llvm-svn: 187654
|
| |
|
|
| |
llvm-svn: 187653
|
| |
|
|
|
|
|
|
|
|
| |
We seem to have ended up with both an inlined check of permitted NEON base
types and a call to a function.
Since the outer if was (I believe) strictly weaker than the one in the
function, there's no actual user-visible behaviour change, so no tests.
llvm-svn: 187652
|
| |
|
|
|
|
| |
Patch by Daniel Sanders.
llvm-svn: 187651
|
| |
|
|
|
|
|
|
| |
Before, clang-format would not break overly long string literals
following a "<<" with FormatStyle::AlwaysBreakBeforeMultilineStrings
being set.
llvm-svn: 187650
|
| |
|
|
| |
llvm-svn: 187649
|
| |
|
|
| |
llvm-svn: 187648
|
| |
|
|
|
|
| |
reported by MSan
llvm-svn: 187647
|