forked from OSchip/llvm-project
72 lines
2.1 KiB
ArmAsm
72 lines
2.1 KiB
ArmAsm
# REQUIRES: x86
|
|
# RUN: llvm-mc -triple=x86_64-windows-msvc -filetype=obj -o %t.obj %s
|
|
# RUN: lld-link %t.obj -out:%t.exe -pdb:%t.pdb -debug -entry:main -subsystem:console
|
|
# RUN: llvm-pdbutil dump -publics %t.pdb | FileCheck %s
|
|
|
|
# Check that there are no __prof[dc] or __covrec public symbols.
|
|
|
|
# CHECK-NOT: __profd
|
|
# CHECK-NOT: __profc
|
|
# CHECK-NOT: __covrec
|
|
# CHECK: S_PUB32 {{.*}} `main`
|
|
# CHECK-NOT: __profd
|
|
# CHECK-NOT: __profc
|
|
# CHECK-NOT: __covrec
|
|
|
|
|
|
# The following assembly is simplified from this C code:
|
|
# int main() {
|
|
# return 0;
|
|
# }
|
|
|
|
# Compiled like so:
|
|
# clang-cl -c pgo-pubs.c -fprofile-instr-generate -fcoverage-mapping -clang:-save-temps
|
|
|
|
|
|
.text
|
|
.intel_syntax noprefix
|
|
.globl main # -- Begin function main
|
|
main: # @main
|
|
# %bb.0: # %entry
|
|
xor eax, eax
|
|
ret
|
|
|
|
.section .lcovfun$M,"dr",discard,__covrec_DB956436E78DD5FAu
|
|
.globl __covrec_DB956436E78DD5FAu # @__covrec_DB956436E78DD5FAu
|
|
.p2align 3
|
|
__covrec_DB956436E78DD5FAu:
|
|
.quad -2624081020897602054 # 0xdb956436e78dd5fa
|
|
.long 9 # 0x9
|
|
.quad 24 # 0x18
|
|
.quad 2164039332547799183 # 0x1e08364eb07c288f
|
|
.ascii "\001\001\000\001\001\b\f\002\002"
|
|
|
|
.section .lcovmap$M,"dr"
|
|
.p2align 3 # @__llvm_coverage_mapping
|
|
.L__llvm_coverage_mapping:
|
|
.long 0 # 0x0
|
|
.long 40 # 0x28
|
|
.long 0 # 0x0
|
|
.long 5 # 0x5
|
|
.ascii "\002%\000\031C:\\src\\llvm-project\\build\npgo-pubs.i"
|
|
|
|
.section .lprfc$M,"dw"
|
|
.p2align 3 # @__profc_main
|
|
__profc_main:
|
|
.zero 8
|
|
|
|
.section .lprfd$M,"dw"
|
|
.p2align 3 # @__profd_main
|
|
__profd_main:
|
|
.quad -2624081020897602054 # 0xdb956436e78dd5fa
|
|
.quad 24 # 0x18
|
|
.quad __profc_main
|
|
.quad main
|
|
.quad 0
|
|
.long 1 # 0x1
|
|
.zero 4
|
|
|
|
.section .lprfn$M,"dr"
|
|
.L__llvm_prf_nm: # @__llvm_prf_nm
|
|
.ascii "\004\000main"
|