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
By default, RGBASM optimizes ld to ldh where possible. I'm told the default will soon change to no optimization, in the interest of what you write is what you get. If the user specifies neither optimization nor no optimization on the command line, RGBASM emits a warning (from parser.y) when optimizing. However, RGBASM suppresses this warning (warnOnLdOpt = false;) after the first occurrence in each translation unit, making it more tedious for me to go in and fix them all.
So here's the behavior that I'd like to see going forward (names are flexible):
-L, -fno-ldh, --preserve-ld (default): no optimization
-l, -fldh, --auto-ldh: optimization
-Wldh to trigger this warning without suppressing it after the first instance
The text was updated successfully, but these errors were encountered:
Issue #986 is regarding the gradual deprecation and removal of ld-to-ldh auto-optimization (and the similar nop-after-halt auto-insertion). Previously they were the default behavior, with -L and -h flags to disable that behavior. Currently the -l and -H flags exist to explicitly enable them, and the first usage of ld or halt triggers a warning if you didn't explicitly opt into or opt out of the behavior. In the next release the no-behavior will be the default, with opting into the auto-behavior warned as deprecated, then removed in the release after that.
Separately, issue #1017 is regarding RGBLINK warnings for possible optimizations (but not doing them automatically). Those could be allowed for all instances or only the first, and could exist for many such patterns (ld when it could be ldh, but also jp when it could be jr, and maybe others like tail call+ret, redundant operations, etc). This would have to be a link-time behavior since too much might be unknown at asm time.
I think this issue can be closed as a duplicate of those.
By default, RGBASM optimizes
ld
toldh
where possible. I'm told the default will soon change to no optimization, in the interest of what you write is what you get. If the user specifies neither optimization nor no optimization on the command line, RGBASM emits a warning (from parser.y) when optimizing. However, RGBASM suppresses this warning (warnOnLdOpt = false;
) after the first occurrence in each translation unit, making it more tedious for me to go in and fix them all.So here's the behavior that I'd like to see going forward (names are flexible):
-L
,-fno-ldh
,--preserve-ld
(default): no optimization-l
,-fldh
,--auto-ldh
: optimization-Wldh
to trigger this warning without suppressing it after the first instanceThe text was updated successfully, but these errors were encountered: