| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the generation of broken LLVMExports.cmake file by
the Autoconf/Makefile build system when --enable-shared is passed to
configure.
When --enable_shared is passed the Makefile.rules does not set the
LLVMConfigLibs variable which cmake/modules/Makefile previously relied
on. Now it runs the llvm-config command itself to get the library names.
This still isn't perfect because the generated LLVM targets refer to the
static libraries and not the shared library but that is much larger
problem to fix.
llvm-svn: 217484
|
| |
|
|
|
|
|
| |
It's supposed to store additional pass information for current function here.
That was the reason for name change.
llvm-svn: 217483
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
instrumentation code.
Summary: [asan-assembly-instrumentation] Added CFI directives to the generated instrumentation code.
Reviewers: eugenis
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5189
llvm-svn: 217482
|
| |
|
|
|
|
|
| |
This ensures the inline assembly register constraints are properly recognised in
TargetLowering::getRegForInlineAsmConstraint.
llvm-svn: 217479
|
| |
|
|
|
|
|
|
|
|
| |
It appears that the -filename-equivalence option for testing llvm-cov
doesn't work correctly with -show-expansions. I'm reverting this test
to get the bots green while I look into fixing that.
This partially reverts r217476
llvm-svn: 217478
|
| |
|
|
|
|
|
|
|
| |
This commit adds aliases for the sync instruction (synciobdma,
syncs, syncw, syncws) which are used by the Octeon CPU.
Reviewed by D. Sanders
llvm-svn: 217477
|
| |
|
|
|
|
|
| |
It appears this code was completely untested, so using ArrayRef wrong
didn't break anything obvious.
llvm-svn: 217476
|
| |
|
|
| |
llvm-svn: 217473
|
| |
|
|
| |
llvm-svn: 217470
|
| |
|
|
|
|
|
|
|
| |
So that the two operations in DwarfDebug couldn't get separated (because
I accidentally separated them in some work in progress), put them
together. While we're here, move DwarfUnit::addRange to
DwarfCompileUnit, since it's not relevant to type units.
llvm-svn: 217468
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
range holes.
PrevSection/PrevCU are used to detect holes in the address range of a CU
to ensure the DW_AT_ranges does not include those holes. When we see a
function with no debug info, though it may be in the same range as the
prior and subsequent functions, there should be a gap in the CU's
ranges. By setting PrevCU to null in that case, the range would not be
extended to cover the gap.
llvm-svn: 217466
|
| |
|
|
| |
llvm-svn: 217465
|
| |
|
|
|
|
|
|
|
|
| |
This is the plugin version of pr20882.
This handles the case of every common symbol being in the IR. We will need some
support from gold to handle the case where some symbols are in ELF and some in
the IR.
llvm-svn: 217458
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is a first pass at a scheduling model for Jaguar.
It's structured largely on the existing SandyBridge and SLM sched models.
Using this model, in addition to turning on the PostRA scheduler, results in
some perf wins on internal and 3rd party benchmarks. There's not much difference
in LLVM's test-suite benchmarking subset of tests.
Differential Revision: http://reviews.llvm.org/D5229
llvm-svn: 217457
|
| |
|
|
|
|
| |
Fixes pr20882.
llvm-svn: 217455
|
| |
|
|
|
|
| |
Patch by Andrew Turner.
llvm-svn: 217454
|
| |
|
|
|
|
| |
Test for the bug fixed in r215723.
llvm-svn: 217453
|
| |
|
|
| |
llvm-svn: 217451
|
| |
|
|
|
|
|
| |
This was not noticed before because llvm-link only runs the verifier on the
result and these globals were not present in the result.
llvm-svn: 217450
|
| |
|
|
| |
llvm-svn: 217449
|
| |
|
|
| |
llvm-svn: 217448
|
| |
|
|
| |
llvm-svn: 217447
|
| |
|
|
| |
llvm-svn: 217446
|
| |
|
|
| |
llvm-svn: 217445
|
| |
|
|
|
|
| |
This matches the behavior of ELF linkers.
llvm-svn: 217443
|
| |
|
|
| |
llvm-svn: 217441
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This directive is used to reset the assembler options to their initial values.
Assembly programmers use it in conjunction with the ".set mipsX" directives.
This patch depends on the .set push/pop directive (http://reviews.llvm.org/D4821).
Contains work done by Matheus Almeida.
Reviewers: dsanders
Reviewed By: dsanders
Differential Revision: http://reviews.llvm.org/D4957
llvm-svn: 217438
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch moves the profile reading logic out of the Sample Profile
transformation into a generic profile reader facility in
lib/ProfileData.
The intent is to use this new reader to implement a sample profile
reader/writer that can be used to convert sample profiles from external
sources into LLVM.
This first patch introduces no functional changes. It moves the profile
reading code from lib/Transforms/SampleProfile.cpp into
lib/ProfileData/SampleProfReader.cpp.
In subsequent patches I will:
- Add a bitcode format for sample profiles to allow for more efficient
encoding of the profile.
- Add a writer for both text and bitcode format profiles.
- Add a 'convert' command to llvm-profdata to be able to convert between
the two (and serve as entry point for other sample profile formats).
Reviewers: bogner, echristo
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5250
llvm-svn: 217437
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MipsSubtarget::getGPRSizeInBytes()
Summary:
The GPR size is more a property of the subtarget than that of the ABI so move
this information to the MipsSubtarget.
No functional change.
Reviewers: vmedic
Reviewed By: vmedic
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5009
llvm-svn: 217436
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
In AT&T annotation for both x86_64 and x32 calls should be printed as
callq in assembly. It's only a matter of correct mnemonic, object output
is ok.
Test Plan: trivial test added
Reviewers: nadav, dschuff, craig.topper
Subscribers: llvm-commits, zinovy.nis
Differential Revision: http://reviews.llvm.org/D5213
llvm-svn: 217435
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Use a MipsSubtarget reference instead.
No functional change.
Reviewers: vmedic
Reviewed By: vmedic
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D5008
llvm-svn: 217434
|
| |
|
|
| |
llvm-svn: 217433
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These directives are used to save the current assembler options (in the case of ".set push") and restore the previously saved options (in the case of ".set pop").
Contains work done by Matheus Almeida.
Reviewers: dsanders
Reviewed By: dsanders
Differential Revision: http://reviews.llvm.org/D4821
llvm-svn: 217432
|
| |
|
|
|
|
|
|
| |
This patch is to permit a negative offset usage for a non frame access.
Patch by Igor Oblakov.
llvm-svn: 217431
|
| |
|
|
| |
llvm-svn: 217430
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This solves the problem of having a kill flag inside a loop
with a definition of the register prior to the loop:
%vreg368<def> ...
Inside loop:
%vreg520<def> = COPY %vreg368
%vreg568<def,tied1> = add %vreg341<tied0>, %vreg520<kill>
=> was coalesced into =>
%vreg568<def,tied1> = add %vreg341<tied0>, %vreg368<kill>
MachineVerifier then complained:
*** Bad machine code: Virtual register killed in block, but needed live out. ***
The kill flag for %vreg368 is incorrect, and is cleared by this patch.
This is similar to the clearing done at the end of
MachineSinking::SinkInstruction().
Patch provided by Jonas Paulsson.
Reviewed by Quentin Colombet and Juergen Ributzka.
llvm-svn: 217427
|
| |
|
|
|
|
|
|
|
| |
llvm-cov had a SourceRange type that was nearly identical to a
CountedRegion except that it shaved off a couple of fields. There
aren't likely to be enough of these for the minor memory savings to be
worth the extra complexity here.
llvm-svn: 217417
|
| |
|
|
|
|
|
| |
This name was too similar to CoverageMappingRegion, and the type
really belongs in the coverage library anyway.
llvm-svn: 217416
|
| |
|
|
|
|
|
|
| |
When compiling without SSE2, isTruncStoreLegal(F64, F32) would return Legal, whereas with SSE2 it would return Expand. And since the Target doesn't seem to actually handle a truncstore for double -> float, it would just output a store of a full double in the space for a float hence overwriting other bits on the stack.
Patch by Luqman Aden!
llvm-svn: 217410
|
| |
|
|
| |
llvm-svn: 217406
|
| |
|
|
|
|
| |
float} and thus cannot be used where a type {i32, {float}} is expected.
llvm-svn: 217405
|
| |
|
|
| |
llvm-svn: 217404
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instructions (PR20863)
Previously, fast-isel would not clean up after failing to select a call
instruction, because it would have called flushLocalValueMap() which moves
the insertion point, making SavedInsertPt in selectInstruction() invalid.
Fixing this by making SavedInsertPt a member variable, and having
flushLocalValueMap() update it.
This removes some redundant code at -O0, and more importantly fixes PR20863.
Differential Revision: http://reviews.llvm.org/D5249
llvm-svn: 217401
|
| |
|
|
| |
llvm-svn: 217399
|
| |
|
|
|
|
|
| |
FunctionCoverageMapping::PrettyName was from a version of the tool
during review, and isn't actually used currently.
llvm-svn: 217398
|
| |
|
|
|
|
|
| |
UBSan complained about using static_cast on the invalid (tombstone, etc.)
pointers used by DenseMap. Use a reinterpret_cast instead.
llvm-svn: 217397
|
| |
|
|
|
|
|
|
|
|
| |
to make sure we don't do invalid load of an enum. Share the
conversion code between llvm::Module implementation and the
verifier.
This bug was reported by UBSan.
llvm-svn: 217395
|
| |
|
|
|
|
|
|
| |
fold permutations.
The testcases for these folds already exist in test/CodeGen/X86/fp-fast.ll.
llvm-svn: 217393
|
| |
|
|
|
|
| |
Also added a FIXME regarding redundant folds for non-canonicalized constants.
llvm-svn: 217390
|
| |
|
|
| |
llvm-svn: 217381
|