1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 21:13:02 +02:00
llvm-mirror/test/DebugInfo/COFF
Adrian Prantl 57907269da [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation
so we can stop using DW_OP_bit_piece with the wrong semantics.

The entire back story can be found here:
http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20161114/405934.html

The gist is that in LLVM we've been misinterpreting DW_OP_bit_piece's
offset field to mean the offset into the source variable rather than
the offset into the location at the top the DWARF expression stack. In
order to be able to fix this in a subsequent patch, this patch
introduces a dedicated DW_OP_LLVM_fragment operation with the
semantics that we used to apply to DW_OP_bit_piece, which is what we
actually need while inside of LLVM. This patch is complete with a
bitcode upgrade for expressions using the old format. It does not yet
fix the DWARF backend to use DW_OP_bit_piece correctly.

Implementation note: We discussed several options for implementing
this, including reserving a dedicated field in DIExpression for the
fragment size and offset, but using an custom operator at the end of
the expression works just fine and is more efficient because we then
only pay for it when we need it.

Differential Revision: https://reviews.llvm.org/D27361
rdar://problem/29335809

llvm-svn: 288683
2016-12-05 18:04:47 +00:00
..
anonymous-struct.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
asan-module-ctor.ll
asan-module-without-functions.ll
asm.ll Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
big-type.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
bitfields.ll DebugInfo: preparation to implement DW_AT_alignment 2016-10-20 00:13:12 +00:00
comdat.ll
cpp-mangling.ll
defer-complete-type.ll [codeview] Write LF_UDT_SRC_LINE records (PR28251) 2016-06-22 21:22:13 +00:00
enum.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
fp-stack.ll
global-dllimport.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
globals-discarded.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
globals.ll Emit S_COMPILE3 CodeView record 2016-09-20 17:20:51 +00:00
inheritance.ll [codeview] support emitting indirect virtual base class information 2016-10-25 22:11:52 +00:00
inlining-files.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
inlining-header.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
inlining-levels.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
inlining-padding.ll
inlining-same-name.ll [CodeView] Don't crash on functions without subprograms 2016-07-28 05:03:22 +00:00
inlining.ll [X86] Optimization for replacing LEA with MOV at frame index elimination time 2016-09-26 06:42:07 +00:00
int8-char-type.ll [codeview] Use character types for all byte-sized integer types 2016-09-29 17:55:01 +00:00
lit.local.cfg
local-constant.ll
local-variable-gap.ll [codeview] Optimize the size of defranges with gaps 2016-09-15 22:05:08 +00:00
local-variables.ll Reapply: "Remove debug location from common tail when tail-merging" 2016-10-26 17:01:47 +00:00
long-name.ll [codeview] Truncate records to maximum record size near 64KB 2016-10-05 22:36:07 +00:00
long-type-name.ll Truncate long names in type records 2016-10-13 17:33:22 +00:00
multifile.ll Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
multifunction.ll Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
parameter-order.ll [codeview] Emit parameter variables in the right order 2016-06-24 17:55:40 +00:00
pieces.ll [DIExpression] Introduce a dedicated DW_OP_LLVM_fragment operation 2016-12-05 18:04:47 +00:00
pr28747.ll Emit S_COMPILE3 record once per TU rather than once per function 2016-11-02 21:30:35 +00:00
register-variables.ll Teach LiveDebugValues about lexical scopes. 2016-09-28 17:51:14 +00:00
retained-types.ll [codeview] Fix letter casing in FileCheck regexes 2016-06-23 18:23:28 +00:00
scopes.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
simple.ll [AsmPrinter] Enable codeview for windows-itanium 2016-11-21 20:13:32 +00:00
tail-call-without-lexical-scopes.ll
typedef.ll Emit S_COMPILE3 CodeView record 2016-09-20 17:20:51 +00:00
types-array-advanced.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
types-array.ll Emit S_COMPILE3 CodeView record 2016-09-20 17:20:51 +00:00
types-basic.ll [codeview] Emit parameter variables in the right order 2016-06-24 17:55:40 +00:00
types-calling-conv.ll [codeview] Write LF_UDT_SRC_LINE records (PR28251) 2016-06-22 21:22:13 +00:00
types-data-members.ll [codeview] Emit vtable shape information 2016-08-31 15:59:30 +00:00
types-nested-class.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
types-non-virtual-methods.ll [codeview] Write LF_UDT_SRC_LINE records (PR28251) 2016-06-22 21:22:13 +00:00
types-ptr-to-member.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
types-recursive-struct.ll [codeview] Write LF_UDT_SRC_LINE records (PR28251) 2016-06-22 21:22:13 +00:00
udts.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
vftables.ll [codeview] Emit vtable shape information 2016-08-31 15:59:30 +00:00
virtual-method-kinds.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
virtual-methods.ll Resubmit "Write the TPI stream from a PDB to Yaml." 2016-08-18 16:49:29 +00:00
vtable-optzn-array.ll DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00