| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 191793
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and it is shared across CUs.
We add a few maps in DwarfDebug to map MDNodes for the type system to the
corresponding DIEs: MDTypeNodeToDieMap, MDSPNodeToDieMap, and
MDStaticMemberNodeToDieMap. These DIEs can be shared across CUs, that is why we
keep the maps in DwarfDebug instead of CompileUnit.
Sometimes, when we try to add an attribute to a DIE, the DIE is not yet added
to its owner yet, so we don't know whether we should use ref_addr or ref4.
We create a worklist that will be processed during finalization to add
attributes with the correct form (ref_addr or ref4).
We add addDIEEntry to DwarfDebug to be a wrapper around DIE->addValue. It checks
whether we know the correct form, if not, we update the worklist
(DIEEntryWorklist).
A testing case is added to show that we only create a single DIE for a type
MDNode and we use ref_addr to refer to the type DIE.
llvm-svn: 191792
|
| |
|
|
| |
llvm-svn: 191790
|
| |
|
|
| |
llvm-svn: 191789
|
| |
|
|
| |
llvm-svn: 191788
|
| |
|
|
|
|
|
|
|
| |
that each comment ends with a newline to match the definition in the header
file.
This is part of <rdar://problem/14687488>.
llvm-svn: 191787
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's silly to merge functions like these:
define void @foo(i32 %x) {
ret void
}
define void @bar(i32 %x) {
ret void
}
to get
define void @bar(i32) {
tail call void @foo(i32 %0)
ret void
}
llvm-svn: 191786
|
| |
|
|
|
|
| |
The use of these features in clang has been reverted.
llvm-svn: 191785
|
| |
|
|
|
|
| |
The added a cmake invocation to null builds, making them a lot slower.
llvm-svn: 191784
|
| |
|
|
| |
llvm-svn: 191783
|
| |
|
|
|
|
|
| |
Thanks for Dimitry Andric, Rafael Espindola, and Benjamin Kramer
for providing and progressively reducing the test case!
llvm-svn: 191782
|
| |
|
|
|
|
|
|
|
|
|
| |
Parsing .debug_aranges section now takes O(nlogn) operations instead
of O(n^2), where "n" is the number of address ranges. With this change,
the time required to symbolize an address from a random large
Clang-generated binary drops from 165 seconds to 1.5 seconds.
No functionality change.
llvm-svn: 191781
|
| |
|
|
| |
llvm-svn: 191780
|
| |
|
|
| |
llvm-svn: 191779
|
| |
|
|
| |
llvm-svn: 191778
|
| |
|
|
| |
llvm-svn: 191777
|
| |
|
|
|
|
|
|
| |
Replacements were no applied when using a compilation database with paths in the
compilation command relative to the compile directory. This patch makes those
paths abosulte.
llvm-svn: 191776
|
| |
|
|
|
|
|
| |
There are no corresponding patterns for small immediates because they would
prevent the use of fused compare-and-branch instructions.
llvm-svn: 191775
|
| |
|
|
| |
llvm-svn: 191774
|
| |
|
|
| |
llvm-svn: 191773
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Pure refactoring, should be no semantic changes.
Reviewers: djasper
Reviewed By: djasper
CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D1796
llvm-svn: 191772
|
| |
|
|
| |
llvm-svn: 191771
|
| |
|
|
|
|
|
| |
This involves using RISB[LH]G, whereas the equivalent z10 optimization
uses RISBG.
llvm-svn: 191770
|
| |
|
|
|
|
|
|
|
|
| |
This attribute allows users to use a modified C or C++ function as an ARM
exception-handling function and, with care, to successfully return control to
user-space after the issue has been dealt with.
rdar://problem/14207019
llvm-svn: 191769
|
| |
|
|
|
|
| |
It's a useful function to have around for target-specific attributes.
llvm-svn: 191768
|
| |
|
|
|
|
| |
As the comment says, we always want to use STOC for 32-bit stores.
llvm-svn: 191767
|
| |
|
|
|
|
|
|
|
|
|
| |
This function-attribute modifies the callee-saved register list and function
epilogue (specifically the return instruction) so that a routine is suitable
for use as an interrupt-handler of the specified type without disrupting
user-mode applications.
rdar://problem/14207019
llvm-svn: 191766
|
| |
|
|
| |
llvm-svn: 191765
|
| |
|
|
|
|
|
|
| |
Floats are stored in the high 32 bits of an FPR, and the only GPR<->FPR
transfers are full-register transfers. This patch optimizes GPR<->FPR
float transfers when the high word of a GPR is directly accessible.
llvm-svn: 191764
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- New ProcessInfo class to encapsulate information about child processes.
- Generalized the Wait() to support non-blocking wait on child processes.
- ExecuteNoWait() now returns a ProcessInfo object with information about
the launched child. Users will be able to use this object to
perform non-blocking wait.
- ExecuteNoWait() now accepts an ExecutionFailed param that tells if execution
failed or not.
These changes will allow users to implement basic process parallel
tools.
Differential Revision: http://llvm-reviews.chandlerc.com/D1728
llvm-svn: 191763
|
| |
|
|
| |
llvm-svn: 191762
|
| |
|
|
| |
llvm-svn: 191760
|
| |
|
|
| |
llvm-svn: 191759
|
| |
|
|
| |
llvm-svn: 191758
|
| |
|
|
|
|
| |
Patch by Alp Toker.
llvm-svn: 191757
|
| |
|
|
|
|
| |
for the catch
llvm-svn: 191756
|
| |
|
|
| |
llvm-svn: 191755
|
| |
|
|
| |
llvm-svn: 191754
|
| |
|
|
| |
llvm-svn: 191753
|
| |
|
|
| |
llvm-svn: 191752
|
| |
|
|
| |
llvm-svn: 191751
|
| |
|
|
|
|
|
| |
Similar to low words, we can use the shorter LLIHL and LLIHH if it turns
out that the other half of the GR64 isn't live.
llvm-svn: 191750
|
| |
|
|
|
|
| |
Pointed out by Joerg.
llvm-svn: 191749
|
| |
|
|
| |
llvm-svn: 191748
|
| |
|
|
| |
llvm-svn: 191747
|
| |
|
|
| |
llvm-svn: 191746
|
| |
|
|
| |
llvm-svn: 191745
|
| |
|
|
|
|
|
| |
This also removes the restriction on the immediate field of the 'hint'
instruction.
llvm-svn: 191744
|
| |
|
|
| |
llvm-svn: 191743
|
| |
|
|
| |
llvm-svn: 191742
|