| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
not get there any other way.
llvm-svn: 145789
|
| |
|
|
|
|
|
|
|
|
|
|
| |
change, now you need a TargetOptions object to create a TargetMachine. Clang
patch to follow.
One small functionality change in PTX. PTX had commented out the machine
verifier parts in their copy of printAndVerify. That now calls the version in
LLVMTargetMachine. Users of PTX who need verification disabled should rely on
not passing the command-line flag to enable it.
llvm-svn: 145714
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
instance and a concrete inlined instance are the use of DW_TAG_subprogram
instead of DW_TAG_inlined_subroutine and the who owns the tree.
We were also omitting DW_AT_inline from the abstract roots. To fix this,
make sure we mark abstract instance roots with DW_AT_inline even when
we have only out-of-line instances referring to them with DW_AT_abstract_origin.
FileCheck is not a very good tool for tests like this, maybe we should add
a -verify mode to llvm-dwarfdump.
llvm-svn: 144441
|
| |
|
|
|
|
|
|
| |
it first.
This is a more general fix to pr11300.
llvm-svn: 144324
|
| |
|
|
|
|
| |
as well.
llvm-svn: 144319
|
| |
|
|
|
|
| |
multiple dies per function and support C++ basenames.
llvm-svn: 144304
|
| |
|
|
| |
llvm-svn: 144194
|
| |
|
|
|
|
| |
entries.
llvm-svn: 144184
|
| |
|
|
| |
llvm-svn: 144169
|
| |
|
|
|
|
| |
and is different than the normal name.
llvm-svn: 144130
|
| |
|
|
| |
llvm-svn: 144105
|
| |
|
|
| |
llvm-svn: 144027
|
| |
|
|
| |
llvm-svn: 143982
|
| |
|
|
|
|
| |
Fixes a self-host error.
llvm-svn: 143970
|
| |
|
|
| |
llvm-svn: 143925
|
| |
|
|
|
|
|
|
| |
to fix the types section (all types, not just global types), and testcases.
The code to do the final emission is disabled by default.
llvm-svn: 143923
|
| |
|
|
| |
llvm-svn: 143920
|
| |
|
|
| |
llvm-svn: 143919
|
| |
|
|
|
|
|
|
| |
DW_AT_specification to
point back in the file in the included testcase. Fixes PR11300.
llvm-svn: 143726
|
| |
|
|
|
|
| |
implied by directory index zero.
llvm-svn: 143570
|
| |
|
|
| |
llvm-svn: 143097
|
| |
|
|
|
|
| |
change.
llvm-svn: 143074
|
| |
|
|
| |
llvm-svn: 142307
|
| |
|
|
|
|
|
|
|
|
| |
.file filenumber "directory" "filename"
This removes one join+split of the directory+filename in MC internals. Because
bitcode files have independent fields for directory and filenames in debug info,
this patch may change the .o files written by existing .bc files.
llvm-svn: 142300
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
file. Since it should only be used when necessary propagate it through
the backend code generation and tweak testcases accordingly.
This helps with code like in clang's test/CodeGen/debug-info-line.c where
we have multiple #line directives within a single lexical block and want
to generate only a single block that contains each file change.
Part of rdar://10246360
llvm-svn: 141729
|
| |
|
|
| |
llvm-svn: 141004
|
| |
|
|
|
|
| |
This does not scale while doing LTO with debug info. New approach is to include list of variables in the subprogram info directly.
llvm-svn: 138145
|
| |
|
|
| |
llvm-svn: 138006
|
| |
|
|
|
|
|
|
| |
This simplified handling of these needs in dwarf writer. However, one side effect of this is that during link time optimization all these MDNodes are _not_ uniqued. In other words there will be N number of MDNodes describing "int", "char" and all other types, which would suddenly grow when each object file starts using libraries like STL.
MDNodes graph structure such that compiler unit keeps track of important MDNodes and update dwarf writer to process mdnodes top-down instead of bottom up.
llvm-svn: 137778
|
| |
|
|
| |
llvm-svn: 137728
|
| |
|
|
| |
llvm-svn: 137689
|
| |
|
|
|
|
| |
uses of getCompileUnit().
llvm-svn: 137683
|
| |
|
|
|
|
| |
possible.
llvm-svn: 137668
|
| |
|
|
|
|
| |
variable.
llvm-svn: 137663
|
| |
|
|
|
|
| |
location expressions. In such cases, AT_location attribute's value will be a label.
llvm-svn: 137659
|
| |
|
|
| |
llvm-svn: 137658
|
| |
|
|
|
|
| |
instruction.
llvm-svn: 137656
|
| |
|
|
|
|
| |
When a variable is inlined multiple places, abstract variable keeps name, location, type etc.. info and all other concreate instances of the variable directly refers to abstract variable.
llvm-svn: 137637
|
| |
|
|
| |
llvm-svn: 137632
|
| |
|
|
| |
llvm-svn: 137631
|
| |
|
|
|
|
| |
create new global variable.
llvm-svn: 137621
|
| |
|
|
|
|
| |
new subprogram.
llvm-svn: 137618
|
| |
|
|
| |
llvm-svn: 137485
|
| |
|
|
| |
llvm-svn: 137321
|
| |
|
|
| |
llvm-svn: 137283
|
| |
|
|
| |
llvm-svn: 137253
|
| |
|
|
| |
llvm-svn: 137249
|
| |
|
|
| |
llvm-svn: 137246
|
| |
|
|
| |
llvm-svn: 137056
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inlined variable, based on the discussion in PR10542.
This explodes the runtime of several passes down the pipeline due to
a large number of "copies" remaining live across a large function. This
only shows up with both debug and opt, but when it does it creates
a many-minute compile when self-hosting LLVM+Clang. There are several
other cases that show these types of regressions.
All of this is tracked in PR10542, and progress is being made on fixing
the issue. Once its addressed, the re-instated, but until then this
restores the performance for self-hosting and other opt+debug builds.
Devang, let me know if this causes any trouble, or impedes fixing it in
any way, and thanks for working on this!
llvm-svn: 136953
|