You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Added -fnonreentrant, -freentrant, __attribute__((nonreentrant)), and __attribute__((reentrant)). The -fnonreentrant Clang flag and __attribute__((nonreentrant)) function attribute directly tell the compiler that it can safely assume that no more than one instance of a given function can simultaneously be active, whether via recursion or interrupt handling. The compiler flag applies to every function in the given module. The -freentrant and __attribute__((reentrant)) flags produce the current default behavior; the compiler cannot assume nonreentrancy, but it still may be able to prove that a given function is safe. The function attributes take precedence over the compiler flags.
Optimizations
Fixed llvm-mos/llvm-mos#244. This can prevent spilling and filling of immediate loads, preferring instead to reissue the load.