Skip to content

Commit 3d621f6

Browse files
authored
Move ckb_vm_asm_labels to rodata (#6)
1 parent 9543e2d commit 3d621f6

File tree

6 files changed

+193
-178
lines changed

6 files changed

+193
-178
lines changed

definitions/src/generate_asm_constants.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use std::mem::{size_of, zeroed};
1717
macro_rules! print_inst_label {
1818
($name:ident, $real_name:ident, $code:expr) => {
1919
println!(
20-
"\t.long\t.CKB_VM_ASM_LABEL_OP_{} - .CKB_VM_ASM_LABEL_TABLE",
20+
"\t.long\t.CKB_VM_ASM_LABEL_OP_{} - .CKB_VM_X64_EXECUTE",
2121
stringify!($real_name)
2222
);
2323
};
@@ -222,20 +222,26 @@ fn main() {
222222

223223
println!("#ifdef CKB_VM_ASM_GENERATE_LABEL_TABLES");
224224
println!("#ifdef __APPLE__");
225+
println!(".section __DATA,__const");
226+
println!(".p2align 3");
225227
println!(".global _ckb_vm_asm_labels");
226228
println!("_ckb_vm_asm_labels:");
227229
println!("#elif __riscv");
230+
println!(".section .rodata");
228231
println!(".p2align 3");
229232
println!(".global ckb_vm_asm_labels");
230233
println!("ckb_vm_asm_labels:");
231234
println!("#else");
235+
println!(".section .rodata");
236+
println!(".p2align 3");
232237
println!(".global ckb_vm_asm_labels");
233238
println!("ckb_vm_asm_labels:");
234239
println!("#endif");
235240
println!(".CKB_VM_ASM_LABEL_TABLE:");
236241
for _ in 0..0x10 {
237-
println!("\t.long\t.exit_slowpath - .CKB_VM_ASM_LABEL_TABLE");
242+
println!("\t.long\t.exit_slowpath - .CKB_VM_X64_EXECUTE");
238243
}
239244
for_each_inst!(print_inst_label);
240245
println!("#endif /* CKB_VM_ASM_GENERATE_LABEL_TABLES */");
246+
println!(".text");
241247
}

0 commit comments

Comments
 (0)