| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
is constified.
llvm-svn: 94613
|
|
|
|
| |
llvm-svn: 89537
|
|
|
|
|
|
| |
make it permanent and remove old way of inserting intrinsics to encode debug info for line number and scopes.
llvm-svn: 87014
|
|
|
|
| |
llvm-svn: 86748
|
|
|
|
|
|
| |
This is not yet enabled.
llvm-svn: 83400
|
|
|
|
| |
llvm-svn: 83182
|
|
|
|
|
|
|
|
|
| |
object, the timer it creates was not being deleted. Since the
timer belonged to a static timer group, the timer group would
be destroyed on shutdown, and would notice and complain that
not all timers it contained were destroyed.
llvm-svn: 81533
|
|
|
|
|
|
| |
Use MDNodes to encode debug info in llvm IR.
llvm-svn: 80406
|
|
|
|
| |
llvm-svn: 80073
|
|
|
|
|
|
|
|
| |
llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.
This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)
llvm-svn: 79977
|
|
|
|
| |
llvm-svn: 79763
|
|
|
|
| |
llvm-svn: 79742
|
|
|
|
| |
llvm-svn: 74215
|
|
|
|
|
|
| |
Again, no intendtional functionality change.
llvm-svn: 71854
|
|
|
|
|
|
| |
though the classes have been marked with "VISIBILITY_HIDDEN".
llvm-svn: 71827
|
|
|
|
|
|
|
|
|
| |
logical/sane approach to organizing all of the stuff that goes into writing out
DWARF information. Honestly? even this is too complex for what it's supposed to
be doing.
Trivia: It *looks* like there would be functionality changes, however there aren't!
llvm-svn: 71821
|
|
|
|
| |
llvm-svn: 71784
|
|
|
|
|
|
|
| |
Basically, there was a situation where it was getting an empty vector and doing
a .back() on that. Which isn't cool.
llvm-svn: 71746
|
|
|
|
|
|
|
|
| |
belonged. The variable declaration stuff wasn't happy with it where it
was. Sorry that the testcase is so big. Bugpoint wasn't able to reduce it
successfully.
llvm-svn: 71714
|
|
|
|
|
|
|
| |
blast it away.
- Move InlineInfo bookkeeping to bookkeep the correct debug info object.
llvm-svn: 71519
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The DwarfWriter expects DbgScopes and DIEs to behave themselves according to
DwarfWriter's rules. However, inlined functions violate these rules. There are
two different types of DIEs associated with an inlined function: an abstract
instance, which has information about the original source code for the function
being inlined; and concrete instances, which are created for each place the
function was inlined and point back to the abstract instance.
This patch tries to stay true to this schema. It bypasses how regular DbgScopes
and DIEs are created and used when necessary. It provides special handling for
DIEs of abstract and concrete instances.
This doesn't take care of all of the problems with debug info for inlined
functions, but it's a step in the right direction. For one thing, llvm-gcc
generates wrong IR (it's missing some llvm.dbg intrinsics at the point where the
function's inlined) for this example:
#include <stdio.h>
static __inline__ __attribute__((always_inline)) int bar(int x) { return 4; }
void foo() {
long long b = 1;
int Y = bar(4);
printf("%d\n", Y);
}
while clang generates correct IR.
llvm-svn: 71410
|
|
|
|
|
|
|
|
|
| |
concrete instance of an inlined function, we can get the actual address of the
abstract instance inside of the compile unit.
This isn't currently used, but will be by a future check-in.
llvm-svn: 71263
|
|
|
|
| |
llvm-svn: 71256
|
|
|
|
|
|
| |
several regressions. The problem due to 71158 is now fixed.
llvm-svn: 71176
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
checking for bcopy... no
checking for getc_unlocked... Assertion failed: (0 && "Unknown SCEV kind!"), function operator(), file /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore.roots/llvmCore~obj/src/lib/Analysis/ScalarEvolution.cpp, line 511.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/libdecnumber/decUtility.c:360: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
make[4]: *** [decUtility.o] Error 1
make[4]: *** Waiting for unfinished jobs....
Assertion failed: (0 && "Unknown SCEV kind!"), function operator(), file /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmCore.roots/llvmCore~obj/src/lib/Analysis/ScalarEvolution.cpp, line 511.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/libdecnumber/decNumber.c:5591: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
make[4]: *** [decNumber.o] Error 1
make[3]: *** [all-stage2-libdecnumber] Error 2
make[3]: *** Waiting for unfinished jobs....
llvm-svn: 71165
|
|
|
|
|
|
|
|
|
|
|
| |
methods:
-Have it return a label ID
-Remove the unused Instruction parameter
No functionality change.
llvm-svn: 71132
|
|
|
|
|
|
|
| |
change.
- Reformatting.
llvm-svn: 71118
|
|
|
|
|
|
|
| |
For implicit decls like "self" and "_cmd" in ObjC, these decls
should not have a location.
llvm-svn: 70964
|
|
|
|
| |
llvm-svn: 70900
|
|
|
|
|
|
|
|
| |
-Depend on DebugLocs for source line info.
(Comes with Regression-Be-Gone(tm))
llvm-svn: 70871
|
|
|
|
| |
llvm-svn: 70811
|
|
|
|
|
|
| |
-Depend on DebugLocs for source line info.
llvm-svn: 70803
|
|
|
|
|
|
|
|
| |
DIDescriptor::ValidDebugInfo
-Create DebugLocs without the need to have a DwarfWriter around
llvm-svn: 70682
|
|
|
|
| |
llvm-svn: 70539
|
|
|
|
| |
llvm-svn: 70537
|
|
|
|
| |
llvm-svn: 70534
|
|
|
|
| |
llvm-svn: 70533
|
|
|
|
|
|
|
|
| |
-Replace DebugLocTuple's Source ID with CompileUnit's GlobalVariable*
-Remove DwarfWriter::getOrCreateSourceID
-Make necessary changes for the above (fix callsites, etc.)
llvm-svn: 70520
|
|
|
|
|
|
|
| |
which better identifies what the optimization is doing. And is more flexible for
future uses.
llvm-svn: 70440
|
|
|
|
|
|
|
|
|
|
|
|
| |
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.
Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'll change the JIT with a follow-up patch.
llvm-svn: 70343
|
|
|
|
| |
llvm-svn: 70275
|
|
|
|
|
|
|
|
|
|
|
| |
use the old behavior, the flag is -O0. This change allows for finer-grained
control over which optimizations are run at different -O levels.
Most of this work was pretty mechanical. The majority of the fixes came from
verifying that a "fast" variable wasn't used anymore. The JIT still uses a
"Fast" flag. I'm not 100% sure if it's necessary to change it there...
llvm-svn: 70270
|
|
|
|
|
|
| |
Patch by Marius Wachtler
llvm-svn: 69637
|
|
|
|
| |
llvm-svn: 69216
|
|
|
|
| |
llvm-svn: 69202
|
|
|
|
|
|
| |
scopes (only in FastISel mode).
llvm-svn: 69116
|
|
|
|
|
|
|
|
| |
relies on DBG_LABEL. Unfortunately this intefers with the quality of optimized code.
This patch updates dwarf writer to encode scoping information in DWARF only in FastISel mode.
llvm-svn: 68973
|
|
|
|
|
|
| |
Now debug_inlined section is covered by TAI->doesDwarfUsesInlineInfoSection(), which is false by default.
llvm-svn: 68964
|
|
|
|
|
|
|
|
| |
to support C99 inline, GNU extern inline, etc. Related bugzilla's
include PR3517, PR3100, & PR2933. Nothing uses this yet, but it
appears to work.
llvm-svn: 68940
|
|
|
|
|
|
|
| |
from the assembler:
Error: unknown pseudo-op: `.debug_inlined'
llvm-svn: 68863
|