summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/COFF/cv-inline-linetable-infloop.s
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/MC/COFF/cv-inline-linetable-infloop.s')
-rw-r--r--llvm/test/MC/COFF/cv-inline-linetable-infloop.s71
1 files changed, 71 insertions, 0 deletions
diff --git a/llvm/test/MC/COFF/cv-inline-linetable-infloop.s b/llvm/test/MC/COFF/cv-inline-linetable-infloop.s
new file mode 100644
index 00000000000..cd0a073be2a
--- /dev/null
+++ b/llvm/test/MC/COFF/cv-inline-linetable-infloop.s
@@ -0,0 +1,71 @@
+# RUN: llvm-mc -triple=x86_64-pc-win32 -filetype=obj < %s | llvm-readobj -codeview | FileCheck %s
+
+# CHECK: InlineSite {
+# CHECK: BinaryAnnotations [
+# CHECK: ChangeLineOffset: 1
+# CHECK: ChangeCodeLength: 0x2
+# CHECK: ]
+# CHECK: }
+
+ .text
+ .cv_file 1 "D:\\src\\llvm\\build\\t.c"
+
+ .def infloop;
+ .scl 2;
+ .type 32;
+ .endef
+ .section .text,"xr",one_only,infloop
+ .globl infloop
+ .p2align 4, 0x90
+infloop: # @infloop
+.Lfunc_begin1:
+ .cv_loc 2 1 3 7 # t.c:3:7
+ jmp .Lfunc_begin1
+.Lfunc_end1:
+
+ .def afterinfloop;
+ .scl 2;
+ .type 32;
+ .endef
+ .section .text,"xr",one_only,afterinfloop
+ .globl afterinfloop
+ .p2align 4, 0x90
+afterinfloop: # @afterinfloop
+ .cv_loc 3 1 13 0 # t.c:13:0
+ retq
+
+ .section .debug$S,"dr"
+ .long 4
+ .long 241 # Symbol subsection for infloop
+ .long .Ltmp17-.Ltmp16 # Subsection size
+.Ltmp16:
+ .short .Ltmp19-.Ltmp18 # Record length
+.Ltmp18:
+ .short 4423 # Record kind: S_GPROC32_ID
+ .long 0 # PtrParent
+ .long 0 # PtrEnd
+ .long 0 # PtrNext
+ .long .Lfunc_end1-infloop # Code size
+ .long 0 # Offset after prologue
+ .long 0 # Offset before epilogue
+ .long 0 # Function type index
+ .secrel32 infloop # Function section relative address
+ .secidx infloop # Function section index
+ .byte 0 # Flags
+ .asciz "infloop" # Function name
+.Ltmp19:
+ .short .Ltmp21-.Ltmp20 # Record length
+.Ltmp20:
+ .short 4429 # Record kind: S_INLINESITE
+ .long 0 # PtrParent
+ .long 0 # PtrEnd
+ .long 4098 # Inlinee type index
+ .cv_inline_linetable 2 1 2 .Lfunc_begin1 .Lfunc_end1
+.Ltmp21:
+ .short 2 # Record length
+ .short 4430 # Record kind: S_INLINESITE_END
+ .short 2 # Record length
+ .short 4431 # Record kind: S_PROC_ID_END
+.Ltmp17:
+ .p2align 2
+ .cv_linetable 1, infloop, .Lfunc_end1
OpenPOWER on IntegriCloud