Overhaul libf7/asm-defs.h for AVR
This commit refactors the AVR assembly definitions for `libf7/asm-defs.h`, introducing a new `REGNO` macro and updating existing macros to use it.
The libf7/asm-defs.h file for AVR, which contains assembly definitions, has been refactored. A new convenience macro, REGNO, simplifies register number notation. The wmov macro now uses REGNO, improving consistency and maintainability. Additionally, do_epilogue_restores has been updated to correctly parenthesize its frame-related operations.
In Details
The libf7/asm-defs.h file within libgcc/config/avr provides fundamental assembly definitions for the AVR architecture's GCC runtime library, specifically for floating-point operations (libf7). This change introduces a REGNO macro to abstract register number access, enhancing the clarity and correctness of assembly code generation for the AVR backend.
For Context
The AVR platform is a family of microcontrollers frequently used in embedded systems. GCC, the GNU Compiler Collection, needs to know the specific details of different computer architectures to generate efficient code. This commit updates a file (asm-defs.h) that defines how certain low-level operations, particularly related to the libf7 floating-point library, are performed in assembly code for AVR. It introduces a new shorthand (REGNO) for referring to registers, which makes the assembly code easier to read and maintain for developers working on the AVR backend of the compiler.