mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 19:12:56 +02:00
Revert "[DEBUGINFO, NVPTX] Enable support for the debug info on NVPTX target."
This reverts commit r351846. This patch may generate illegal assembly code, see ``` $ ./bin/clang -cc1 -triple nvptx64-nvidia-cuda -aux-triple x86_64-grtev4-linux-gnu -S -disable-free -disable-llvm-verifier -discard-value-names -main-file-name new.cc -mrelocation-model pic -pic-level 2 -mthread-model posix -fmerge-all-constants -mdisable-fp-elim -relaxed-aliasing -no-integrated-as -mpie-copy-relocations -munwind-tables -fcuda-is-device -target-feature +ptx60 -target-cpu sm_35 -dwarf-column-info -debug-info-kind=line-directives-only -dwarf-version=2 -debugger-tuning=gdb -o empty.s -x cuda empty.cc $ cat empty.s // // Generated by LLVM NVPTX Back-End // .version 6.0 .target sm_35 .address_size 64 } ``` llvm-svn: 351966
This commit is contained in:
parent
5d3783c0d0
commit
88704a4bd3
@ -37,11 +37,12 @@ NVPTXMCAsmInfo::NVPTXMCAsmInfo(const Triple &TheTriple) {
|
||||
HiddenDeclarationVisibilityAttr = HiddenVisibilityAttr = MCSA_Invalid;
|
||||
ProtectedVisibilityAttr = MCSA_Invalid;
|
||||
|
||||
Data8bitsDirective = ".b8 ";
|
||||
// FIXME: remove comment once debug info is properly supported.
|
||||
Data8bitsDirective = "// .b8 ";
|
||||
Data16bitsDirective = nullptr; // not supported
|
||||
Data32bitsDirective = ".b32 ";
|
||||
Data64bitsDirective = ".b64 ";
|
||||
ZeroDirective = ".b8";
|
||||
Data32bitsDirective = "// .b32 ";
|
||||
Data64bitsDirective = "// .b64 ";
|
||||
ZeroDirective = "// .b8";
|
||||
AsciiDirective = nullptr; // not supported
|
||||
AscizDirective = nullptr; // not supported
|
||||
SupportsQuotedNames = false;
|
||||
|
@ -81,9 +81,10 @@ void NVPTXTargetStreamer::changeSection(const MCSection *CurSection,
|
||||
raw_ostream &OS) {
|
||||
assert(!SubSection && "SubSection is not null!");
|
||||
const MCObjectFileInfo *FI = getStreamer().getContext().getObjectFileInfo();
|
||||
// FIXME: remove comment once debug info is properly supported.
|
||||
// Emit closing brace for DWARF sections only.
|
||||
if (isDwarfSection(FI, CurSection))
|
||||
OS << "\t}\n";
|
||||
OS << "//\t}\n";
|
||||
if (isDwarfSection(FI, Section)) {
|
||||
// Emit DWARF .file directives in the outermost scope.
|
||||
outputDwarfFileDirectives();
|
||||
@ -91,7 +92,7 @@ void NVPTXTargetStreamer::changeSection(const MCSection *CurSection,
|
||||
Section->PrintSwitchToSection(*getStreamer().getContext().getAsmInfo(),
|
||||
FI->getTargetTriple(), OS, SubSection);
|
||||
// DWARF sections are enclosed into braces - emit the open one.
|
||||
OS << "\t{\n";
|
||||
OS << "//\t{\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -901,8 +901,9 @@ void NVPTXAsmPrinter::emitHeader(Module &M, raw_ostream &O,
|
||||
if (HasFullDebugInfo)
|
||||
break;
|
||||
}
|
||||
// FIXME: remove comment once debug info is properly supported.
|
||||
if (MMI && MMI->hasDebugInfo() && HasFullDebugInfo)
|
||||
O << ", debug";
|
||||
O << "//, debug";
|
||||
|
||||
O << "\n";
|
||||
|
||||
@ -953,9 +954,10 @@ bool NVPTXAsmPrinter::doFinalization(Module &M) {
|
||||
clearAnnotationCache(&M);
|
||||
|
||||
delete[] gv_array;
|
||||
// FIXME: remove comment once debug info is properly supported.
|
||||
// Close the last emitted section
|
||||
if (HasDebugInfo)
|
||||
OutStreamer->EmitRawText("\t}");
|
||||
OutStreamer->EmitRawText("//\t}");
|
||||
|
||||
// Output last DWARF .file directives, if any.
|
||||
static_cast<NVPTXTargetStreamer *>(OutStreamer->getTargetStreamer())
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -mtriple=nvptx64-nvidia-cuda | FileCheck %s
|
||||
|
||||
; CHECK: .target sm_{{[0-9]+}}, debug
|
||||
; CHECK: .target sm_{{[0-9]+}}//, debug
|
||||
|
||||
; CHECK: .visible .func (.param .b32 func_retval0) b(
|
||||
; CHECK: .param .b32 b_param_0
|
||||
@ -72,145 +72,145 @@ entry:
|
||||
ret i32 %add, !dbg !16
|
||||
}
|
||||
|
||||
; CHECK: .section .debug_abbrev
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 39 // DW_AT_prototyped
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 5 // DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_info
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b32 183 // Length of Unit
|
||||
; CHECK-NEXT: .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: .b8 1 // Abbrev [1] 0xb:0xb0 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,116,114,117,110,107,32,50,48,52,49,54,52,41,32,40,108,108,118,109 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 47,116,114,117,110,107,32,50,48,52,49,56,51,41
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 12 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 98,46,99 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 47,115,111,117,114,99,101 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end2 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 2 // Abbrev [2] 0x65:0x27 DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 156
|
||||
; CHECK-NEXT: .b8 98 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 3 // Abbrev [3] 0x82:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: .b8 99 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 2 // Abbrev [2] 0x8c:0x27 DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b64 Lfunc_begin2 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end2 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 156
|
||||
; CHECK-NEXT: .b8 100 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 3 // Abbrev [3] 0xa9:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: .b8 101 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 4 // Abbrev [4] 0xb3:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_macinfo
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 0 // End Of Macro List Mark
|
||||
; CHECK: }
|
||||
; CHECK: // .section .debug_abbrev
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: // .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 39 // DW_AT_prototyped
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 5 // DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_info
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b32 183 // Length of Unit
|
||||
; CHECK-NEXT: // .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: // .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: // .b8 1 // Abbrev [1] 0xb:0xb0 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,116,114,117,110,107,32,50,48,52,49,54,52,41,32,40,108,108,118,109 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 47,116,114,117,110,107,32,50,48,52,49,56,51,41
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 12 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 98,46,99 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 47,115,111,117,114,99,101 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end2 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 2 // Abbrev [2] 0x65:0x27 DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 156
|
||||
; CHECK-NEXT: // .b8 98 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: // .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 3 // Abbrev [3] 0x82:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: // .b8 99 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 2 // Abbrev [2] 0x8c:0x27 DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin2 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end2 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 156
|
||||
; CHECK-NEXT: // .b8 100 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: // .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 3 // Abbrev [3] 0xa9:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: // .b8 101 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b32 179 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 4 // Abbrev [4] 0xb3:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_macinfo
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 0 // End Of Macro List Mark
|
||||
; CHECK: // }
|
||||
|
||||
attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||||
attributes #1 = { nounwind readnone }
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -mtriple=nvptx64-nvidia-cuda | FileCheck %s
|
||||
|
||||
; CHECK: .target sm_20, debug
|
||||
; CHECK: .target sm_20//, debug
|
||||
|
||||
; CHECK: .visible .func use_dbg_declare()
|
||||
; CHECK: .local .align 8 .b8 __local_depot0[8];
|
||||
@ -23,169 +23,169 @@
|
||||
|
||||
; CHECK: .file 1 "test{{(/|\\\\)}}t.c"
|
||||
|
||||
; CHECK: .section .debug_abbrev
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 39 // DW_AT_prototyped
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 52 // DW_TAG_variable
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 2 // DW_AT_location
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 19 // DW_TAG_structure_type
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 5 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 13 // DW_TAG_member
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 56 // DW_AT_data_member_location
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 6 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_info
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b32 135 // Length of Unit
|
||||
; CHECK-NEXT: .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: .b8 1 // Abbrev [1] 0xb:0x80 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 99,108,97,110,103 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 12 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 116,46,99 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 116,101,115,116 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 2 // Abbrev [2] 0x31:0x3d DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 156
|
||||
; CHECK-NEXT: .b8 117,115,101,95,100,98,103,95,100,101,99,108,97,114,101 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 3 // Abbrev [3] 0x58:0x15 DW_TAG_variable
|
||||
; CHECK-NEXT: .b8 11 // DW_AT_location
|
||||
; CHECK-NEXT: .b8 3
|
||||
; CHECK-NEXT: .b64 __local_depot0
|
||||
; CHECK-NEXT: .b8 35
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 111 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b32 110 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 4 // Abbrev [4] 0x6e:0x15 DW_TAG_structure_type
|
||||
; CHECK-NEXT: .b8 70,111,111 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 5 // Abbrev [5] 0x76:0xc DW_TAG_member
|
||||
; CHECK-NEXT: .b8 120 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 131 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 2 // DW_AT_data_member_location
|
||||
; CHECK-NEXT: .b8 35
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 6 // Abbrev [6] 0x83:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: }
|
||||
; CHECK: // .section .debug_abbrev
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: // .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 39 // DW_AT_prototyped
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 52 // DW_TAG_variable
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 2 // DW_AT_location
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 19 // DW_TAG_structure_type
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 5 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 13 // DW_TAG_member
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 56 // DW_AT_data_member_location
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 6 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_info
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b32 135 // Length of Unit
|
||||
; CHECK-NEXT: // .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: // .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: // .b8 1 // Abbrev [1] 0xb:0x80 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 99,108,97,110,103 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 12 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 116,46,99 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 116,101,115,116 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 2 // Abbrev [2] 0x31:0x3d DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 156
|
||||
; CHECK-NEXT: // .b8 117,115,101,95,100,98,103,95,100,101,99,108,97,114,101 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_prototyped
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 3 // Abbrev [3] 0x58:0x15 DW_TAG_variable
|
||||
; CHECK-NEXT: // .b8 11 // DW_AT_location
|
||||
; CHECK-NEXT: // .b8 3
|
||||
; CHECK-NEXT: // .b64 __local_depot0
|
||||
; CHECK-NEXT: // .b8 35
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 111 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b32 110 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 4 // Abbrev [4] 0x6e:0x15 DW_TAG_structure_type
|
||||
; CHECK-NEXT: // .b8 70,111,111 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 5 // Abbrev [5] 0x76:0xc DW_TAG_member
|
||||
; CHECK-NEXT: // .b8 120 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 131 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 2 // DW_AT_data_member_location
|
||||
; CHECK-NEXT: // .b8 35
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 6 // Abbrev [6] 0x83:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // }
|
||||
|
||||
%struct.Foo = type { i32 }
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
;__device__ void bar() {}
|
||||
;}
|
||||
|
||||
; CHECK: .target sm_{{[0-9]+}}, debug
|
||||
; CHECK: .target sm_{{[0-9]+}}//, debug
|
||||
|
||||
; CHECK: .visible .func foo()
|
||||
; CHECK: .loc [[FOO:[0-9]+]] 1 31
|
||||
@ -29,52 +29,52 @@ bb:
|
||||
|
||||
; CHECK-DAG: .file [[FOO]] "{{.*}}foo.h"
|
||||
; CHECK-DAG: .file [[BAR]] "{{.*}}bar.cu"
|
||||
; CHECK: .section .debug_abbrev
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_info
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b32 50 // Length of Unit
|
||||
; CHECK-NEXT: .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: .b8 1 // Abbrev [1] 0xb:0x2b DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 0 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 98,97,114,46,99,117 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 47,115,111,117,114,99,101,47,100,105,114 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_macinfo
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 0 // End Of Macro List Mark
|
||||
; CHECK: }
|
||||
; CHECK: // .section .debug_abbrev
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: // .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_info
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b32 50 // Length of Unit
|
||||
; CHECK-NEXT: // .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: // .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: // .b8 1 // Abbrev [1] 0xb:0x2b DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 0 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 98,97,114,46,99,117 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 47,115,111,117,114,99,101,47,100,105,114 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_macinfo
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 0 // End Of Macro List Mark
|
||||
; CHECK: // }
|
||||
|
||||
!llvm.dbg.cu = !{!0}
|
||||
!llvm.module.flags = !{!8, !9}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
; RUN: llc -mtriple=nvptx64-nvidia-cuda < %s | FileCheck %s
|
||||
|
||||
; CHECK: .target sm_{{[0-9]+}}, debug
|
||||
; CHECK: .target sm_{{[0-9]+}}//, debug
|
||||
|
||||
; CHECK: .extern .func (.param .b32 func_retval0) _ZN1A3fooEv
|
||||
; CHECK: (
|
||||
@ -129,207 +129,207 @@ attributes #2 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "n
|
||||
!33 = !DILocation(line: 11, scope: !32)
|
||||
!34 = !DILocation(line: 12, scope: !14)
|
||||
|
||||
; CHECK: .section .debug_abbrev
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 19 // DW_TAG_structure_type
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 60 // DW_AT_declaration
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 135,64 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 52 // DW_TAG_variable
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 16 // DW_FORM_ref_addr
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 5 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: .b8 135,64 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 6 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 5 // DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 7 // Abbreviation Code
|
||||
; CHECK-NEXT: .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_info
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b32 150 // Length of Unit
|
||||
; CHECK-NEXT: .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: .b8 1 // Abbrev [1] 0xb:0x8f DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,50,49,48,52,55,57,41 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 100,101,98,117,103,45,108,111,99,45,111,102,102,115,101,116,50,46,99,99 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 47,108,108,118,109,95,99,109,97,107,101,95,103,99,99 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b64 Lfunc_begin1 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 2 // Abbrev [2] 0x64:0x4 DW_TAG_structure_type
|
||||
; CHECK-NEXT: .b8 65 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_declaration
|
||||
; CHECK-NEXT: .b8 3 // Abbrev [3] 0x68:0x31 DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b64 Lfunc_begin1 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 156
|
||||
; CHECK-NEXT: .b8 95,90,51,98,97,122,49,65 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 98,97,122 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 2 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 6 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 4 // Abbrev [4] 0x8b:0xd DW_TAG_variable
|
||||
; CHECK-NEXT: .b8 122 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 2 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 7 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b64 .debug_info+302 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b32 152 // Length of Unit
|
||||
; CHECK-NEXT: .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: .b8 1 // Abbrev [1] 0xb:0x91 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,50,49,48,52,55,57,41 // DW_AT_producer
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 100,101,98,117,103,45,108,111,99,45,111,102,102,115,101,116,49,46,99,99 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: .b8 47,108,108,118,109,95,99,109,97,107,101,95,103,99,99 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 5 // Abbrev [5] 0x64:0x30 DW_TAG_subprogram
|
||||
; CHECK-NEXT: .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: .b8 156
|
||||
; CHECK-NEXT: .b8 95,90,51,98,97,114,105 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 98,97,114 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b32 148 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: .b8 6 // Abbrev [6] 0x8a:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: .b8 98 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: .b32 148 // DW_AT_type
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: .b8 7 // Abbrev [7] 0x94:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: .b8 0
|
||||
; CHECK-NEXT: .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: }
|
||||
; CHECK-NEXT: .section .debug_macinfo
|
||||
; CHECK-NEXT: {
|
||||
; CHECK-NEXT: .b8 0 // End Of Macro List Mark
|
||||
; CHECK: }
|
||||
; CHECK: // .section .debug_abbrev
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 1 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 17 // DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 37 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 19 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 5 // DW_FORM_data2
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 16 // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 6 // DW_FORM_data4
|
||||
; CHECK-NEXT: // .b8 27 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 2 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 19 // DW_TAG_structure_type
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 60 // DW_AT_declaration
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 3 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 135,64 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 4 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 52 // DW_TAG_variable
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 16 // DW_FORM_ref_addr
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 5 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 46 // DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b8 1 // DW_CHILDREN_yes
|
||||
; CHECK-NEXT: // .b8 17 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 18 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_FORM_addr
|
||||
; CHECK-NEXT: // .b8 64 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 10 // DW_FORM_block1
|
||||
; CHECK-NEXT: // .b8 135,64 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 63 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 12 // DW_FORM_flag
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 6 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 5 // DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 58 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 59 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 73 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 19 // DW_FORM_ref4
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 7 // Abbreviation Code
|
||||
; CHECK-NEXT: // .b8 36 // DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 0 // DW_CHILDREN_no
|
||||
; CHECK-NEXT: // .b8 3 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 8 // DW_FORM_string
|
||||
; CHECK-NEXT: // .b8 62 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 11 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 11 // DW_FORM_data1
|
||||
; CHECK-NEXT: // .b8 0 // EOM(1)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(2)
|
||||
; CHECK-NEXT: // .b8 0 // EOM(3)
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_info
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b32 150 // Length of Unit
|
||||
; CHECK-NEXT: // .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: // .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: // .b8 1 // Abbrev [1] 0xb:0x8f DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,50,49,48,52,55,57,41 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 100,101,98,117,103,45,108,111,99,45,111,102,102,115,101,116,50,46,99,99 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 47,108,108,118,109,95,99,109,97,107,101,95,103,99,99 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin1 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 2 // Abbrev [2] 0x64:0x4 DW_TAG_structure_type
|
||||
; CHECK-NEXT: // .b8 65 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_declaration
|
||||
; CHECK-NEXT: // .b8 3 // Abbrev [3] 0x68:0x31 DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin1 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end1 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 156
|
||||
; CHECK-NEXT: // .b8 95,90,51,98,97,122,49,65 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 98,97,122 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 2 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 6 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 4 // Abbrev [4] 0x8b:0xd DW_TAG_variable
|
||||
; CHECK-NEXT: // .b8 122 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 2 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 7 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b64 .debug_info+302 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b32 152 // Length of Unit
|
||||
; CHECK-NEXT: // .b8 2 // DWARF version number
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_abbrev // Offset Into Abbrev. Section
|
||||
; CHECK-NEXT: // .b8 8 // Address Size (in bytes)
|
||||
; CHECK-NEXT: // .b8 1 // Abbrev [1] 0xb:0x91 DW_TAG_compile_unit
|
||||
; CHECK-NEXT: // .b8 99,108,97,110,103,32,118,101,114,115,105,111,110,32,51,46,53,46,48,32,40,50,49,48,52,55,57,41 // DW_AT_producer
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_language
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 100,101,98,117,103,45,108,111,99,45,111,102,102,115,101,116,49,46,99,99 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b32 .debug_line // DW_AT_stmt_list
|
||||
; CHECK-NEXT: // .b8 47,108,108,118,109,95,99,109,97,107,101,95,103,99,99 // DW_AT_comp_dir
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 5 // Abbrev [5] 0x64:0x30 DW_TAG_subprogram
|
||||
; CHECK-NEXT: // .b64 Lfunc_begin0 // DW_AT_low_pc
|
||||
; CHECK-NEXT: // .b64 Lfunc_end0 // DW_AT_high_pc
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_frame_base
|
||||
; CHECK-NEXT: // .b8 156
|
||||
; CHECK-NEXT: // .b8 95,90,51,98,97,114,105 // DW_AT_MIPS_linkage_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 98,97,114 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b32 148 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_external
|
||||
; CHECK-NEXT: // .b8 6 // Abbrev [6] 0x8a:0x9 DW_TAG_formal_parameter
|
||||
; CHECK-NEXT: // .b8 98 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_file
|
||||
; CHECK-NEXT: // .b8 1 // DW_AT_decl_line
|
||||
; CHECK-NEXT: // .b32 148 // DW_AT_type
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // .b8 7 // Abbrev [7] 0x94:0x7 DW_TAG_base_type
|
||||
; CHECK-NEXT: // .b8 105,110,116 // DW_AT_name
|
||||
; CHECK-NEXT: // .b8 0
|
||||
; CHECK-NEXT: // .b8 5 // DW_AT_encoding
|
||||
; CHECK-NEXT: // .b8 4 // DW_AT_byte_size
|
||||
; CHECK-NEXT: // .b8 0 // End Of Children Mark
|
||||
; CHECK-NEXT: // }
|
||||
; CHECK-NEXT: // .section .debug_macinfo
|
||||
; CHECK-NEXT: // {
|
||||
; CHECK-NEXT: // .b8 0 // End Of Macro List Mark
|
||||
; CHECK: // }
|
||||
|
Loading…
Reference in New Issue
Block a user