1e0bca46bSSriraman Tallam // REQUIRES: x86-registered-target 2e0bca46bSSriraman Tallam 37841e21cSRahman Lavaee // RUN: %clang_cc1 -triple x86_64 -S -o - < %s | FileCheck %s --check-prefix=PLAIN 47841e21cSRahman Lavaee // RUN: %clang_cc1 -triple x86_64 -S -fbasic-block-sections=all -fbasic-block-sections=none -o - < %s | FileCheck %s --check-prefix=PLAIN 5e0bca46bSSriraman Tallam 67841e21cSRahman Lavaee // RUN: %clang_cc1 -triple x86_64 -S -fbasic-block-sections=all -o - < %s | FileCheck %s --check-prefix=BB_WORLD --check-prefix=BB_ALL 77841e21cSRahman Lavaee // RUN: %clang_cc1 -triple x86_64 -S -fbasic-block-sections=list=%S/Inputs/basic-block-sections.funcnames -o - < %s | FileCheck %s --check-prefix=BB_WORLD --check-prefix=BB_LIST 87841e21cSRahman Lavaee // RUN: %clang_cc1 -triple x86_64 -S -fbasic-block-sections=all -funique-basic-block-section-names -o - < %s | FileCheck %s --check-prefix=UNIQUE 9e625f9c5SFangrui Song // RUN: rm -f %t 10e625f9c5SFangrui Song // RUN: not %clang_cc1 -fbasic-block-sections=list= -emit-obj -o %t %s 2>&1 | FileCheck %s --check-prefix=ERROR 11e625f9c5SFangrui Song // RUN: not ls %t 12e0bca46bSSriraman Tallam 13e0bca46bSSriraman Tallam int world(int a) { 14e0bca46bSSriraman Tallam if (a > 10) 15e0bca46bSSriraman Tallam return 10; 16e0bca46bSSriraman Tallam else if (a > 5) 17e0bca46bSSriraman Tallam return 5; 18e0bca46bSSriraman Tallam else 19e0bca46bSSriraman Tallam return 0; 20e0bca46bSSriraman Tallam } 21e0bca46bSSriraman Tallam 22e0bca46bSSriraman Tallam int another(int a) { 23e0bca46bSSriraman Tallam if (a > 10) 24e0bca46bSSriraman Tallam return 20; 25e0bca46bSSriraman Tallam return 0; 26e0bca46bSSriraman Tallam } 27e0bca46bSSriraman Tallam 28e0bca46bSSriraman Tallam // PLAIN-NOT: section 29e0bca46bSSriraman Tallam // PLAIN: world: 30e0bca46bSSriraman Tallam // 31e0bca46bSSriraman Tallam // BB_WORLD: .section .text.world,"ax",@progbits{{$}} 32e0bca46bSSriraman Tallam // BB_WORLD: world: 33e0bca46bSSriraman Tallam // BB_WORLD: .section .text.world,"ax",@progbits,unique 34*34e70d72SSriraman Tallam // BB_WORLD: world.__part.1: 35e0bca46bSSriraman Tallam // BB_WORLD: .section .text.another,"ax",@progbits 36e0bca46bSSriraman Tallam // BB_ALL: .section .text.another,"ax",@progbits,unique 37*34e70d72SSriraman Tallam // BB_ALL: another.__part.1: 38e0bca46bSSriraman Tallam // BB_LIST-NOT: .section .text.another,"ax",@progbits,unique 39e0bca46bSSriraman Tallam // BB_LIST: another: 40*34e70d72SSriraman Tallam // BB_LIST-NOT: another.__part.1: 41e0bca46bSSriraman Tallam // 42*34e70d72SSriraman Tallam // UNIQUE: .section .text.world.world.__part.1, 43*34e70d72SSriraman Tallam // UNIQUE: .section .text.another.another.__part.1, 44829b9f66SFangrui Song // ERROR: error: unable to load basic block sections function list: '{{[Nn]}}o such file or directory' 45