Devang Patel
d5b7c28519
Ignore DBG_VALUE machine instructions while constructing instruction ranges based on location info.
...
Machine instruction range consisting of only DBG_VALUE MIs only contributes consecutive labels in assembly output, which is harmless, and empty scope entry in DebugInfo, which confuses debugger tools.
llvm-svn: 125577
2011-02-15 17:56:09 +00:00
Devang Patel
930b4b16a1
Merge .debug_loc entries whenever possible to reduce debug_loc size.
...
llvm-svn: 124904
2011-02-04 22:57:18 +00:00
Devang Patel
71b1fadf20
Add support to describe template value parameter in debug info.
...
llvm-svn: 124755
2011-02-02 22:35:53 +00:00
Devang Patel
89455dc7cd
Add support to describe template parameter type in debug info.
...
llvm-svn: 124752
2011-02-02 21:38:25 +00:00
Devang Patel
729c5e59af
Fix debug info for merged global.
...
llvm-svn: 123862
2011-01-20 00:02:16 +00:00
Devang Patel
574e10fa1e
Fix register address expression. Patch by Ken Dyck.
...
llvm-svn: 123856
2011-01-19 23:04:47 +00:00
Devang Patel
7b5cf4eafc
Appropriately truncate debug info range in dwarf output.
...
This is not yet completely enabled.
llvm-svn: 123274
2011-01-11 21:42:10 +00:00
Anton Korobeynikov
cf5967630b
Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs and fixes here and there.
...
llvm-svn: 123170
2011-01-10 12:39:04 +00:00
Devang Patel
d3ba97949a
Speculatively revert r123032.
...
llvm-svn: 123039
2011-01-07 22:33:41 +00:00
Devang Patel
a52d6c216d
Appropriately truncate debug info range in dwarf output.
...
Enable live debug variables pass.
llvm-svn: 123032
2011-01-07 21:30:41 +00:00
Devang Patel
7cb0e7c2ef
Emit 128 bit constant.
...
This fixes PR 8913 crash.
llvm-svn: 122971
2011-01-06 21:39:25 +00:00
Devang Patel
b3e0d80b1f
DW_FORM_data1 may not provide sufficient room for vtable index, use _udata instead.
...
This fixes radar 8730409.
llvm-svn: 121323
2010-12-09 00:10:40 +00:00
Devang Patel
12459bc442
Undefined value in reg 0 may need a marker to identify end of source range.
...
This will be used to truncate live range of DBG_VALUE instruction by register allocator and friends.
llvm-svn: 121061
2010-12-06 22:48:22 +00:00
Michael J. Spencer
d5ec932c3a
Merge System into Support.
...
llvm-svn: 120298
2010-11-29 18:16:10 +00:00
Anton Korobeynikov
ff8c52bd51
Move some more hooks to TargetFrameInfo
...
llvm-svn: 119904
2010-11-20 15:59:32 +00:00
Anton Korobeynikov
ce676f96e1
Move getInitialFrameState() to TargetFrameInfo
...
llvm-svn: 119754
2010-11-18 23:25:52 +00:00
Rafael Espindola
93a07b464e
Change CodeGen to use .loc directives. This produces a lot more readable output
...
and testing is easier. A good example is the unknown-location.ll test that
now can just look for ".loc 1 0 0". We also don't use a DW_LNE_set_address for
every address change anymore.
llvm-svn: 119613
2010-11-18 02:04:25 +00:00
Devang Patel
3dd764feda
Remove DW_AT_start_scope support. It is incomplete and superseeded by location entries support.
...
llvm-svn: 118940
2010-11-12 23:20:42 +00:00
Devang Patel
5520a6fc97
Take care of special characters while creating named MDNode name to hold function specific local variable's info.
...
This fixes radar 8653152. I am checking in testcase as a separate check-in.
llvm-svn: 118726
2010-11-10 22:19:21 +00:00
Devang Patel
37fa9bb66a
Simplify.
...
llvm-svn: 118027
2010-11-02 17:37:00 +00:00
Devang Patel
bf9c3c8947
Ignore empty blocks.
...
llvm-svn: 117615
2010-10-28 22:11:59 +00:00
Devang Patel
a496603faf
Do not work too hard to find type's file info. There is a special field to record file info.
...
llvm-svn: 117588
2010-10-28 19:50:08 +00:00
Devang Patel
0e43a2d84f
Technically DIFile scope should also be handled here.
...
llvm-svn: 117563
2010-10-28 17:30:52 +00:00
Devang Patel
e544bb3842
s/beginScope/beginInstruction/g
...
s/endScope/endInstruction/g
llvm-svn: 117376
2010-10-26 17:49:02 +00:00
Nick Lewycky
f7dddd658f
For statistics that are only used in functions declared in !NDEBUG, wrap the
...
declarations in !NDEBUG to avoid -Wunused-variable warnings. Patch by
Matt Beaumont-Gay!
llvm-svn: 117345
2010-10-26 00:51:57 +00:00
Devang Patel
24a6b791b6
Add simple counter to count no. of basic blocks without any line number information. At -O0, these basic block coule cause less than optimial debugging experience.
...
llvm-svn: 117307
2010-10-25 20:45:32 +00:00
Devang Patel
3090b0ebf1
Line number 0 indicates there is no source line/file name info available for this construct.
...
llvm-svn: 116061
2010-10-08 17:18:54 +00:00
Devang Patel
ee23e6ea23
Provie a clearner interface so that FE can decide whether a function has prototype or not.
...
llvm-svn: 115988
2010-10-07 22:03:01 +00:00
Devang Patel
eeb0b64560
Add support for DW_TAG_unspecified_parameters.
...
llvm-svn: 115833
2010-10-06 20:50:40 +00:00
Devang Patel
f612c0b23e
Add support to let FE mark explict methods as explict in debug info.
...
llvm-svn: 115378
2010-10-01 23:31:40 +00:00
Devang Patel
41e2a94595
Let FE mark a variable as artificial variable.
...
llvm-svn: 115102
2010-09-29 23:07:21 +00:00
Devang Patel
f600d9f0ed
Add support to let FE encode method access specifier.
...
llvm-svn: 115089
2010-09-29 21:44:16 +00:00
Devang Patel
fd6665e8aa
Assign DW_ACCESS_public accessibility attribute to members by default.
...
llvm-svn: 115067
2010-09-29 19:08:08 +00:00
Devang Patel
e1f502ee26
Provide an interface to let FEs anchor debug info for types.
...
llvm-svn: 114969
2010-09-28 18:08:20 +00:00
Devang Patel
0a414c918a
Remove dead argument.
...
llvm-svn: 114920
2010-09-27 23:15:27 +00:00
Devang Patel
8914755c40
Use DW_OP_fbreg when offset is based on frame register.
...
llvm-svn: 114585
2010-09-22 21:10:38 +00:00
Devang Patel
99777d1d07
If FE forgot to provide a file name (usually it uses "stdin" as name in such situation) then make one up to ensure that debug info is not malformed.
...
llvm-svn: 114119
2010-09-16 20:57:49 +00:00
Devang Patel
bbbd35d042
Fix .debug_range for linux. Patch by Krister Wombell.
...
llvm-svn: 112830
2010-09-02 16:43:44 +00:00
Devang Patel
9e8ee9242f
Use absolute label for DW_AT_stmt_list if a target does not prefer offset here.
...
This patch was developed on top of original patch by Artur Pietrek.
llvm-svn: 112678
2010-08-31 23:50:19 +00:00
Devang Patel
46570e6783
Reapply r112623. Included additional check for unused byval argument.
...
llvm-svn: 112659
2010-08-31 22:22:42 +00:00
Devang Patel
b94251aea0
Revert r112623. It is causing self host build failures.
...
llvm-svn: 112631
2010-08-31 19:41:03 +00:00
Devang Patel
414cbc940a
Remember byval argument's frame index during argument lowering and use this info to emit debug info.
...
Fixes Radar 8367011.
llvm-svn: 112623
2010-08-31 18:50:09 +00:00
Devang Patel
2eeab37306
Simplify.
...
llvm-svn: 112583
2010-08-31 06:11:28 +00:00
Devang Patel
9024c19242
Revert r107202. It is not adding any value.
...
llvm-svn: 111870
2010-08-24 00:06:12 +00:00
Devang Patel
cf6c6b4038
Handle qualified constants that are directly folded by FE.
...
PR 7920.
llvm-svn: 111820
2010-08-23 18:25:56 +00:00
Devang Patel
9b12559c4f
Do not forget debug info for enums. Use named mdnode to keep track of these types.
...
llvm-svn: 110712
2010-08-10 20:01:20 +00:00
Devang Patel
84f48b5483
Handle TAG_constant for integers.
...
llvm-svn: 110656
2010-08-10 07:11:13 +00:00
Devang Patel
8edc7575a4
Simplify.
...
llvm-svn: 110653
2010-08-10 04:12:17 +00:00
Devang Patel
191ed4c41d
Drop "const". It does not add value here.
...
llvm-svn: 110652
2010-08-10 04:09:06 +00:00
Devang Patel
ef61383343
Do not include file static variable in pubnames list.
...
Refactor and simplify code to avoid redundant checks.
llvm-svn: 110642
2010-08-10 01:37:23 +00:00