llvm-project

Форк
0
/
pgo-pubs.s 
71 строка · 2.1 Кб
1
# REQUIRES: x86
2
# RUN: llvm-mc -triple=x86_64-windows-msvc -filetype=obj -o %t.obj %s
3
# RUN: lld-link %t.obj -out:%t.exe -pdb:%t.pdb -debug -entry:main -subsystem:console
4
# RUN: llvm-pdbutil dump -publics %t.pdb | FileCheck %s
5

6
# Check that there are no __prof[dc] or __covrec public symbols.
7

8
# CHECK-NOT: __profd
9
# CHECK-NOT: __profc
10
# CHECK-NOT: __covrec
11
# CHECK: S_PUB32 {{.*}} `main`
12
# CHECK-NOT: __profd
13
# CHECK-NOT: __profc
14
# CHECK-NOT: __covrec
15

16

17
# The following assembly is simplified from this C code:
18
# int main() {
19
#   return 0;
20
# }
21

22
# Compiled like so:
23
# clang-cl -c pgo-pubs.c -fprofile-instr-generate -fcoverage-mapping -clang:-save-temps
24

25

26
	.text
27
	.intel_syntax noprefix
28
	.globl	main                            # -- Begin function main
29
main:                                   # @main
30
# %bb.0:                                # %entry
31
	xor	eax, eax
32
	ret
33

34
	.section	.lcovfun$M,"dr",discard,__covrec_DB956436E78DD5FAu
35
	.globl	__covrec_DB956436E78DD5FAu      # @__covrec_DB956436E78DD5FAu
36
	.p2align	3
37
__covrec_DB956436E78DD5FAu:
38
	.quad	-2624081020897602054            # 0xdb956436e78dd5fa
39
	.long	9                               # 0x9
40
	.quad	24                              # 0x18
41
	.quad	2164039332547799183             # 0x1e08364eb07c288f
42
	.ascii	"\001\001\000\001\001\b\f\002\002"
43

44
	.section	.lcovmap$M,"dr"
45
	.p2align	3                               # @__llvm_coverage_mapping
46
.L__llvm_coverage_mapping:
47
	.long	0                               # 0x0
48
	.long	40                              # 0x28
49
	.long	0                               # 0x0
50
	.long	5                               # 0x5
51
	.ascii	"\002%\000\031C:\\src\\llvm-project\\build\npgo-pubs.i"
52

53
	.section	.lprfc$M,"dw"
54
	.p2align	3                               # @__profc_main
55
__profc_main:
56
	.zero	8
57

58
	.section	.lprfd$M,"dw"
59
	.p2align	3                               # @__profd_main
60
__profd_main:
61
	.quad	-2624081020897602054            # 0xdb956436e78dd5fa
62
	.quad	24                              # 0x18
63
	.quad	__profc_main
64
	.quad	main
65
	.quad	0
66
	.long	1                               # 0x1
67
	.zero	4
68

69
	.section	.lprfn$M,"dr"
70
.L__llvm_prf_nm:                        # @__llvm_prf_nm
71
	.ascii	"\004\000main"
72

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.