Skip to content
This repository was archived by the owner on Apr 23, 2020. It is now read-only.

Commit 8762081

Browse files
committed
[sanitizer] Small buffer tests for __sanitizer_symbolize_pc
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@343534 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent 8e7ed60 commit 8762081

File tree

1 file changed

+20
-3
lines changed

1 file changed

+20
-3
lines changed

test/sanitizer_common/TestCases/symbolize_pc.cc

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,17 @@
77

88
int GLOBAL_VAR_ABC;
99

10+
void SymbolizeSmallBuffer() {
11+
char data[] = "abcdef";
12+
__sanitizer_symbolize_pc(__builtin_return_address(0), "%p %F %L", data, 0);
13+
printf("UNCHANGED '%s'\n", data);
14+
__sanitizer_symbolize_pc(__builtin_return_address(0), "%p %F %L", data, 1);
15+
printf("EMPTY '%s'\n", data);
16+
__sanitizer_symbolize_pc(__builtin_return_address(0), "%p %F %L", data,
17+
sizeof(data));
18+
printf("PARTIAL '%s'\n", data);
19+
}
20+
1021
void SymbolizeCaller() {
1122
char data[100];
1223
__sanitizer_symbolize_pc(__builtin_return_address(0), "%p %F %L", data,
@@ -31,10 +42,16 @@ void SymbolizeData() {
3142
printf("GLOBAL: %s\n", data);
3243
}
3344

34-
// CHECK: FIRST_FORMAT 0x{{.*}} in main symbolize_pc.cc:[[@LINE+3]]
35-
// CHECK: SECOND_FORMAT FUNC:main LINE:[[@LINE+2]] FILE:symbolize_pc.cc
3645
int main() {
46+
// CHECK: UNCHANGED 'abcdef'
47+
// CHECK: EMPTY ''
48+
// CHECK: PARTIAL '0x{{.*}}'
49+
SymbolizeSmallBuffer();
50+
51+
// CHECK: FIRST_FORMAT 0x{{.*}} in main symbolize_pc.cc:[[@LINE+2]]
52+
// CHECK: SECOND_FORMAT FUNC:main LINE:[[@LINE+1]] FILE:symbolize_pc.cc
3753
SymbolizeCaller();
54+
55+
// CHECK: GLOBAL: GLOBAL_VAR_ABC
3856
SymbolizeData();
3957
}
40-
// CHECK: GLOBAL: GLOBAL_VAR_ABC

0 commit comments

Comments
 (0)