| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
implicit default"
Accidentally committed a few more of these cleanup changes than
intended. Still breaking these out & tidying them up.
This reverts commit r231135.
llvm-svn: 231136
|
|
|
|
|
|
|
|
|
|
| |
There doesn't seem to be any need to assert that iterator assignment is
between iterators over the same node - if you want to reuse an iterator
variable to iterate another node, that's perfectly acceptable. Just
don't mix comparisons between iterators into disjoint sequences, as
usual.
llvm-svn: 231135
|
|
|
|
| |
llvm-svn: 231132
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The issue is that now we have a diag handler during optimizations
and get forward every optimization remark, flooding stdout.
The same filtering should probably be done with or without a
custom handler, but for now just ignore remarks.
Original message:
gold-plugin: "Upgrade" debug info and handle its warnings.
The gold plugin never calls MaterializeModule, so any old debug info
was not deleted and could cause crashes.
Now that it is being "upgraded", the plugin also has to handle warnings
and create Modules with a nice id (it shows in the warning).
llvm-svn: 230991
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A short list of some of the improvements:
1) Now supports -all command line argument, which implies many
other command line arguments to simplify usage.
2) Now supports -no-compiler-generated command line argument to
exclude compiler generated types.
3) Prints base class list.
4) -class-definitions implies -types.
5) Proper display of bitfields.
6) Can now distinguish between struct/class/interface/union.
And a few other minor tweaks.
llvm-svn: 230933
|
|
|
|
| |
llvm-svn: 230909
|
|
|
|
| |
llvm-svn: 230890
|
|
|
|
| |
llvm-svn: 230889
|
|
|
|
| |
llvm-svn: 230888
|
|
|
|
|
|
| |
It emits *millions of warnings* during selfhosting LTO build, to choke the buildbot with gigbytes of log.
llvm-svn: 230885
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously it was impossible to distinguish between "There is
no PDB implementation for this platform" and "I tried to load
the PDB, but couldn't find the file", making it hard to figure
out if you built llvm-pdbdump incorrectly or if you just mistyped
a file name.
This patch adds proper error handling so that we can know exactly
what went wrong.
llvm-svn: 230868
|
|
|
|
| |
llvm-svn: 230826
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This class is responsible for getting the linked data to the
disk in the appropriate form. Today it it an empty shell that
just instantiates an MC layer.
As we do not put anything in the resulting file yet, we just
check it has the right architecture (and check that -o does
the right thing).
To be able to create all the components, this commit adds a
few dependencies to llvm-dsymutil, namely all-targets, MC and
AsmPrinter.
Also add a -no-output option, so that tests that do not need
the binary result can continue to run even if they do not have
the required target linked in.
llvm-svn: 230824
|
|
|
|
|
|
|
| |
The only option we have to pass down currently is verbosity, but there
are more to come.
llvm-svn: 230823
|
|
|
|
| |
llvm-svn: 230822
|
|
|
|
|
|
| |
We do not create the output file yet, so no means to test.
llvm-svn: 230821
|
|
|
|
|
|
|
|
|
| |
...and reimplement DwarfLinker::reportWarning in terms of it. Other
compenents than the DwarfLinker will need to report warnings, and I'm
about to add a similar "error()" helper at the same global level so
make that consistent.
llvm-svn: 230820
|
|
|
|
| |
llvm-svn: 230819
|
|
|
|
| |
llvm-svn: 230804
|
|
|
|
| |
llvm-svn: 230747
|
|
|
|
| |
llvm-svn: 230746
|
|
|
|
| |
llvm-svn: 230744
|
|
|
|
| |
llvm-svn: 230713
|
|
|
|
| |
llvm-svn: 230704
|
|
|
|
|
|
|
|
|
|
|
|
| |
Function pointers were not correctly handled by the dumper, and
they would print as "* name". They now print as
"int (__cdecl *name)(int arg1, int arg2)" as they should.
Also, doubles were being printed as floats. This fixes that bug
as well, and adds tests for all builtin types. as well as a test
for function pointers.
llvm-svn: 230703
|
|
|
|
|
|
|
|
|
|
| |
The gold plugin never calls MaterializeModule, so any old debug info
was not deleted and could cause crashes.
Now that it is being "upgraded", the plugin also has to handle warnings
and create Modules with a nice id (it shows in the warning).
llvm-svn: 230655
|
|
|
|
| |
llvm-svn: 230599
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since r199356, we've printed a warning when dropping debug info.
r225562 started crashing on that, since it registered a diagnostic
handler that only expected errors. This fixes the handler to expect
other severities. As a side effect, it now prints "error: " at the
start of error messages, similar to `llvm-as`.
There was a testcase for r199356, but it only really checked the
assembler. Move `test/Bitcode/drop-debug-info.ll` to `test/Assembler`,
and introduce `test/Bitcode/drop-debug-info.3.5.ll` (and companion
`.bc`) to test the bitcode reader.
Note: tools/gold/gold-plugin.cpp has an equivalent bug, but I'm not sure
what the best fix is there. I'll file a PR.
llvm-svn: 230416
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Like r230414, add bitcode support including backwards compatibility, for
an explicit type parameter to GEP.
At the suggestion of Duncan I tried coalescing the two older bitcodes into a
single new bitcode, though I did hit a wrinkle: I couldn't figure out how to
create an explicit abbreviation for a record with a variable number of
arguments (the indicies to the gep). This means the discriminator between
inbounds and non-inbounds gep is a full variable-length field I believe? Is my
understanding correct? Is there a way to create such an abbreviation? Should I
just use two bitcodes as before?
Reviewers: dexonsmith
Differential Revision: http://reviews.llvm.org/D7736
llvm-svn: 230415
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r230062.
Debian stable (wheezy) ships still with cmake 2.8.9.
The commit broke my LLVM/Polly buildbot, to my knowledge our only Linux+cmake
buildbot.
llvm-svn: 230343
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When debugging LTO issues with ld64, we use -save-temps to save the merged
optimized bitcode file, then invoke ld64 again on the single bitcode file to
speed up debugging code generation passes and ld64 stuff after code generation.
llvm linking a single bitcode file via lto_codegen_add_module will generate a
different bitcode file from the single input. With the newly-added
lto_codegen_set_module, we can make sure the destination module is the same as
the input.
lto_codegen_set_module will transfer the ownship of the module to code
generator.
rdar://19024554
llvm-svn: 230290
|
|
|
|
|
|
|
|
|
|
|
|
| |
When multiple regions start on the same line, llvm-cov was just
showing the count of the last one as the line count. This can be
confusing and misleading for things like one-liner loops, where the
count at the end isn't very interesting, or even "if" statements with
an opening brace at the end of the line.
Instead, use the maximum of all of the region start counts.
llvm-svn: 230263
|
|
|
|
|
|
| |
This reverts commit r230240, which was an accidental commit.
llvm-svn: 230246
|
|
|
|
|
|
| |
This reverts commit 247aed4710e8befde76da42b27313661dea7cf66.
llvm-svn: 230240
|
|
|
|
| |
llvm-svn: 230216
|
|
|
|
| |
llvm-svn: 230205
|
|
|
|
|
|
|
| |
This just removes some dead enums as well as some debug flushes
of stdout.
llvm-svn: 230204
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the --class-definitions flag. If specified, when dumping
types, instead of "class Foo" you will see the full class definition,
with member functions, constructors, access specifiers.
NOTE: Using this option can be very slow, as generating a full class
definition requires accessing many different parts of the PDB.
llvm-svn: 230203
|
|
|
|
| |
llvm-svn: 230187
|
|
|
|
| |
llvm-svn: 230186
|
|
|
|
|
|
|
|
|
|
| |
This increases the flexibility of how to dump different
symbol types -- necessary for context-sensitive formatting of
symbol types -- and also improves the modularity by allowing
the dumping to be implemented in the actual dumper, as opposed
to in the PDB library.
llvm-svn: 230184
|
|
|
|
|
|
|
|
|
| |
This removes a wealth of options, and instead now only provides
three options. -symbols, -types, and -compilands. This greatly
simplifies use of the tool, and makes it easier to understand
what you're going to see when you run the tool.
llvm-svn: 230182
|
|
|
|
|
|
| |
This adds section group support to the tools obj2yaml and yaml2obj.
llvm-svn: 230124
|
|
|
|
|
|
| |
This fixes the gold tests after r230054.
llvm-svn: 230098
|
|
|
|
| |
llvm-svn: 230062
|
|
|
|
|
|
| |
asm directives.
llvm-svn: 229798
|
|
|
|
|
|
|
| |
This tests the simple resume instruction elimination logic that we have
before making some changes to it.
llvm-svn: 229768
|
|
|
|
|
|
|
|
|
|
| |
This will help us study the format of individual symbol
records more closely.
Differential Revision: http://reviews.llvm.org/D7664
Reviewed by: Timur Iskhodzhanov
llvm-svn: 229730
|
|
|
|
| |
llvm-svn: 229721
|
|
|
|
|
|
|
|
|
|
|
| |
literal pointer sections
with the Mach-O S_LITERAL_POINTERS section type.
Also fix the printing of the leading addresses for literal sections to be consistent and
not print the 0x prefix. Updated test cases to match.
llvm-svn: 229548
|