-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
The following code seems to use outdated function attribute to disable frame pointer optimizations:
runtime/src/mono/mono/mini/mini-llvm.c
Lines 11480 to 11481 in f29484a
| if (cfg->disable_omit_fp) | |
| mono_llvm_add_func_attr_nv (method, "no-frame-pointer-elim", "true"); |
The documentation lists only a newer variant:
"frame-pointer"
This attribute tells the code generator whether the function should keep the frame pointer. The code generator may emit the frame pointer even if this attribute says the frame pointer can be eliminated. The allowed string values are:
"none" (default) - the frame pointer can be eliminated.
"non-leaf" - the frame pointer should be kept if the function calls other functions.
"all" - the frame pointer should be kept.
This is similar to the issue with the old option used for LLVM ARM globally.
I'm not sure why the compiler does not complain or whether the old option still works.