brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.7 KiB · 4fe70d9 Raw
109 lines · plain
1; This test should verify that adding !pcsections metadata is encoded properly2; by the AsmPrinter. For tests to check that metadata is propagated to3; assembly, see pcsections-*.ll tests.4 5; RUN: llc -O0 < %s | FileCheck %s --check-prefixes=CHECK,DEFCM6; RUN: llc -O1 < %s | FileCheck %s --check-prefixes=CHECK,DEFCM7; RUN: llc -O2 < %s | FileCheck %s --check-prefixes=CHECK,DEFCM8; RUN: llc -O3 < %s | FileCheck %s --check-prefixes=CHECK,DEFCM9; RUN: llc -O1 -code-model=large < %s | FileCheck %s --check-prefixes=CHECK,LARGE10 11target triple = "x86_64-unknown-linux-gnu"12 13@foo = dso_local global i64 0, align 814@bar = dso_local global i64 0, align 815 16define void @empty_no_aux() !pcsections !0 {17; CHECK-LABEL: empty_no_aux:18; CHECK-NEXT:  .Lfunc_begin019; CHECK:       # %bb.0: # %entry20; CHECK-NEXT:    retq21; CHECK-NEXT:  .Lfunc_end0:22; CHECK:       .section	section_no_aux,"awo",@progbits,.{{l?}}text23; CHECK-NEXT:  .Lpcsection_base0:24; DEFCM-NEXT:  .long	.Lfunc_begin0-.Lpcsection_base025; LARGE-NEXT:  .quad	.Lfunc_begin0-.Lpcsection_base026; CHECK-NEXT:  .long	.Lfunc_end0-.Lfunc_begin027; CHECK-NEXT:  .{{l?}}text28entry:29  ret void30}31 32define void @empty_aux() !pcsections !1 {33; CHECK-LABEL: empty_aux:34; CHECK-NEXT:  .Lfunc_begin135; CHECK:       # %bb.0: # %entry36; CHECK-NEXT:    retq37; CHECK-NEXT:  .Lfunc_end1:38; CHECK:       .section	section_aux,"awo",@progbits,.{{l?}}text39; CHECK-NEXT:  .Lpcsection_base1:40; DEFCM-NEXT:  .long	.Lfunc_begin1-.Lpcsection_base141; LARGE-NEXT:  .quad	.Lfunc_begin1-.Lpcsection_base142; CHECK-NEXT:  .long	.Lfunc_end1-.Lfunc_begin143; CHECK-NEXT:  .long	1044; CHECK-NEXT:  .long	2045; CHECK-NEXT:  .long	3046; CHECK-NEXT:  .{{l?}}text47entry:48  ret void49}50 51define i64 @multiple() !pcsections !0 {52; CHECK-LABEL: multiple:53; CHECK-NEXT:  .Lfunc_begin254; CHECK:       # %bb.0: # %entry55; CHECK:       .Lpcsection0:56; CHECK-NEXT:    movq57; CHECK-NEXT:    retq58; CHECK-NEXT:  .Lfunc_end2:59; CHECK:       .section	section_no_aux,"awo",@progbits,.{{l?}}text60; CHECK-NEXT:  .Lpcsection_base2:61; DEFCM-NEXT:  .long	.Lfunc_begin2-.Lpcsection_base262; LARGE-NEXT:  .quad	.Lfunc_begin2-.Lpcsection_base263; CHECK-NEXT:  .long	.Lfunc_end2-.Lfunc_begin264; CHECK-NEXT:  .section	section_aux_42,"awo",@progbits,.{{l?}}text65; CHECK-NEXT:  .Lpcsection_base3:66; DEFCM-NEXT:  .long	.Lpcsection0-.Lpcsection_base367; LARGE-NEXT:  .quad	.Lpcsection0-.Lpcsection_base368; CHECK-NEXT:  .long	4269; CHECK-NEXT:  .section	section_aux_21264,"awo",@progbits,.{{l?}}text70; CHECK-NEXT:  .Lpcsection_base4:71; DEFCM-NEXT:  .long	.Lpcsection0-.Lpcsection_base472; LARGE-NEXT:  .quad	.Lpcsection0-.Lpcsection_base473; CHECK-NEXT:  .long	2126474; CHECK-NEXT:  .{{l?}}text75entry:76  %0 = load i64, ptr @bar, align 8, !pcsections !277  ret i64 %078}79 80define void @multiple_uleb128() !pcsections !6 {81; CHECK-LABEL: multiple_uleb128:82; CHECK:       .section	section_aux,"awo",@progbits,.{{l?}}text83; CHECK-NEXT:  .Lpcsection_base5:84; DEFCM-NEXT:  .long	.Lfunc_begin3-.Lpcsection_base585; LARGE-NEXT:  .quad	.Lfunc_begin3-.Lpcsection_base586; CHECK-NEXT:  .uleb128	.Lfunc_end3-.Lfunc_begin387; CHECK-NEXT:  .byte	4288; CHECK-NEXT:  .ascii	"\345\216&"89; CHECK-NEXT:  .byte	25590; CHECK-NEXT:  .section	section_aux_21264,"awo",@progbits,.{{l?}}text91; CHECK-NEXT:  .Lpcsection_base6:92; DEFCM-NEXT:  .long	.Lfunc_begin3-.Lpcsection_base693; LARGE-NEXT:  .quad	.Lfunc_begin3-.Lpcsection_base694; CHECK-NEXT:  .long	.Lfunc_end3-.Lfunc_begin395; CHECK-NEXT:  .long	2126496; CHECK-NEXT:  .{{l?}}text97entry:98  ret void99}100 101!0 = !{!"section_no_aux"}102!1 = !{!"section_aux", !3}103!2 = !{!"section_aux_42", !4, !"section_aux_21264", !5}104!3 = !{i32 10, i32 20, i32 30}105!4 = !{i32 42}106!5 = !{i32 21264}107!6 = !{!"section_aux!C", !7, !"section_aux_21264", !5}108!7 = !{i64 42, i32 624485, i8 255}109