[no-plt] enable no-plt behavior on linux arm64 and amd64 targets

This commit is contained in:
A1029384756
2026-06-08 10:58:05 -04:00
parent 43b057dfeb
commit da742fc526
4 changed files with 26 additions and 0 deletions

View File

@@ -2142,6 +2142,9 @@ gb_internal lbProcedure *lb_create_startup_runtime(lbModule *main_module, lbProc
lbProcedure *p = lb_create_dummy_procedure(main_module, str_lit(LB_STARTUP_RUNTIME_PROC_NAME), proc_type);
p->is_startup = true;
if (build_context.no_plt) {
lb_add_attribute_to_proc(p->module, p->value, "nonlazybind");
}
lb_add_attribute_to_proc(p->module, p->value, "optnone");
lb_add_attribute_to_proc(p->module, p->value, "noinline");
@@ -2162,6 +2165,9 @@ gb_internal lbProcedure *lb_create_cleanup_runtime(lbModule *main_module) { // C
lbProcedure *p = lb_create_dummy_procedure(main_module, str_lit(LB_CLEANUP_RUNTIME_PROC_NAME), proc_type);
p->is_startup = true;
if (build_context.no_plt) {
lb_add_attribute_to_proc(p->module, p->value, "nonlazybind");
}
lb_add_attribute_to_proc(p->module, p->value, "optnone");
lb_add_attribute_to_proc(p->module, p->value, "noinline");