GCC Newspaper
OCTOBER 6, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
avr

AVR libgcc gains support for signed and unsigned square-root division.

libgcc for AVR now includes `divsq3` and `udivusq3` for signed and unsigned square-root division.

The libgcc library for the AVR microcontroller architecture has been updated to include support for two new division functions: divsq3 for signed division and udivusq3 for unsigned division. These functions are added to the AVR target’s configuration, enabling more comprehensive arithmetic capabilities for AVR applications compiled with GCC.

In Details

The libgcc configuration for the AVR target (config/avr/t-avr) has been extended to include the _divsq3 and _udivusq3 functions within FUNCS_notiny. Corresponding assembly implementations (lib1funcs-fixed.S) for __udivusq3, __divsq3, __usdivusq3, and __ssdivsq3 are newly defined to provide support for signed and unsigned division operations on the AVR architecture.

For Context
libgcc
GCC's runtime library that provides essential functions not directly generated by the compiler, such as division, floating-point operations, and exception handling.
AVR
A family of microcontrollers manufactured by Atmel (now Microchip Technology), commonly used in embedded systems.
signed division
Integer division where the operands can be positive or negative numbers.
unsigned division
Integer division where the operands are only non-negative numbers.
Filed Under: avrlibgccdivisionembedded