Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 03f4e88

Browse files
committed
Handle protected visibility in codegen_naked_asm
1 parent 14491b0 commit 03f4e88

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

compiler/rustc_codegen_ssa/src/mir/naked_asm.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,10 @@ fn prefix_and_suffix<'tcx>(
210210
writeln!(begin, ".pushsection {section},\"ax\", {progbits}").unwrap();
211211
writeln!(begin, ".balign {align_bytes}").unwrap();
212212
write_linkage(&mut begin).unwrap();
213-
if let Visibility::Hidden = item_data.visibility {
214-
writeln!(begin, ".hidden {asm_name}").unwrap();
213+
match item_data.visibility {
214+
Visibility::Default => {}
215+
Visibility::Protected => writeln!(begin, ".protected {asm_name}").unwrap(),
216+
Visibility::Hidden => writeln!(begin, ".hidden {asm_name}").unwrap(),
215217
}
216218
writeln!(begin, ".type {asm_name}, {function}").unwrap();
217219
if !arch_prefix.is_empty() {
@@ -231,8 +233,9 @@ fn prefix_and_suffix<'tcx>(
231233
writeln!(begin, ".pushsection {},regular,pure_instructions", section).unwrap();
232234
writeln!(begin, ".balign {align_bytes}").unwrap();
233235
write_linkage(&mut begin).unwrap();
234-
if let Visibility::Hidden = item_data.visibility {
235-
writeln!(begin, ".private_extern {asm_name}").unwrap();
236+
match item_data.visibility {
237+
Visibility::Default | Visibility::Protected => {}
238+
Visibility::Hidden => writeln!(begin, ".private_extern {asm_name}").unwrap(),
236239
}
237240
writeln!(begin, "{asm_name}:").unwrap();
238241

0 commit comments

Comments
 (0)