mirror of
https://github.com/decompme/decomp.me.git
synced 2026-02-21 13:59:25 -06:00
Adds a new checkbox for disabling pseudo instructions on MIPS scratches by passing the `-Mno-aliases` flag to `objdump`. This is disabled by default.  ### Why is this useful? Because GAS likes using the same pseudo instruction for multiple instructions, which sometimes leads to confusion of "why this doesn't match if it is the same instruction". Complains about this usually happen with the `li` pseudo instruction. Example ("both are `li`s, why it doesn't match?!?!?"):  Disabling pseudos ("oh, they actually are different instructions"):  ### Disadvantages Some pseudos are clearer as pseudos than their actual raw instruction; like for example the `nop`, which gets disassembled as `sll, zero, zero, 0x0`. `move` is also an example of this (even if the underlying instruction changes depending on the assembler). There doesn't seem to be any option in `objdump` to only allow some pseudos. `asm-differ` seems to have custom logic for handling `nop`s which gets lost when disabling them, this can be seen in this screenshot:  A workaround for this could be made in the `asm-differ` repo. ### Other I also allowed passing the other objdump flags to PS1 and PS2.