1*e0bca46bSSriraman Tallam // REQUIRES: x86-registered-target 2*e0bca46bSSriraman Tallam 3*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -o - < %s | FileCheck %s --check-prefix=PLAIN 4*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -fbasic-block-sections=all -fbasic-block-sections=none -o - < %s | FileCheck %s --check-prefix=PLAIN 5*e0bca46bSSriraman Tallam 6*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -fbasic-block-sections=labels -o - < %s | FileCheck %s --check-prefix=BB_LABELS 7*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -fbasic-block-sections=all -o - < %s | FileCheck %s --check-prefix=BB_WORLD --check-prefix=BB_ALL 8*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -fbasic-block-sections=list=%S/Inputs/basic-block-sections.funcnames -o - < %s | FileCheck %s --check-prefix=BB_WORLD --check-prefix=BB_LIST 9*e0bca46bSSriraman Tallam // RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -S -fbasic-block-sections=all -funique-basic-block-section-names -o - < %s | FileCheck %s --check-prefix=UNIQUE 10*e0bca46bSSriraman Tallam 11*e0bca46bSSriraman Tallam int world(int a) { 12*e0bca46bSSriraman Tallam if (a > 10) 13*e0bca46bSSriraman Tallam return 10; 14*e0bca46bSSriraman Tallam else if (a > 5) 15*e0bca46bSSriraman Tallam return 5; 16*e0bca46bSSriraman Tallam else 17*e0bca46bSSriraman Tallam return 0; 18*e0bca46bSSriraman Tallam } 19*e0bca46bSSriraman Tallam 20*e0bca46bSSriraman Tallam int another(int a) { 21*e0bca46bSSriraman Tallam if (a > 10) 22*e0bca46bSSriraman Tallam return 20; 23*e0bca46bSSriraman Tallam return 0; 24*e0bca46bSSriraman Tallam } 25*e0bca46bSSriraman Tallam 26*e0bca46bSSriraman Tallam // PLAIN-NOT: section 27*e0bca46bSSriraman Tallam // PLAIN: world: 28*e0bca46bSSriraman Tallam // 29*e0bca46bSSriraman Tallam // BB_LABELS-NOT: section 30*e0bca46bSSriraman Tallam // BB_LABELS: world: 31*e0bca46bSSriraman Tallam // BB_LABELS: a.BB.world: 32*e0bca46bSSriraman Tallam // BB_LABELS: aa.BB.world: 33*e0bca46bSSriraman Tallam // BB_LABELS: a.BB.another: 34*e0bca46bSSriraman Tallam // 35*e0bca46bSSriraman Tallam // BB_WORLD: .section .text.world,"ax",@progbits{{$}} 36*e0bca46bSSriraman Tallam // BB_WORLD: world: 37*e0bca46bSSriraman Tallam // BB_WORLD: .section .text.world,"ax",@progbits,unique 38*e0bca46bSSriraman Tallam // BB_WORLD: world.1: 39*e0bca46bSSriraman Tallam // BB_WORLD: .section .text.another,"ax",@progbits 40*e0bca46bSSriraman Tallam // BB_ALL: .section .text.another,"ax",@progbits,unique 41*e0bca46bSSriraman Tallam // BB_ALL: another.1: 42*e0bca46bSSriraman Tallam // BB_LIST-NOT: .section .text.another,"ax",@progbits,unique 43*e0bca46bSSriraman Tallam // BB_LIST: another: 44*e0bca46bSSriraman Tallam // BB_LIST-NOT: another.1: 45*e0bca46bSSriraman Tallam // 46*e0bca46bSSriraman Tallam // UNIQUE: .section .text.world.world.1, 47*e0bca46bSSriraman Tallam // UNIQUE: .section .text.another.another.1, 48