[Bug target/54222] [avr] Implement fixed-point support
gjl at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jan 25 09:28:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54222
--- Comment #10 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2013-01-25 09:28:14 UTC ---
Author: gjl
Date: Fri Jan 25 09:28:09 2013
New Revision: 195464
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=195464
Log:
gcc/
PR target/54222
* config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
Add NULL LIBNAME argument to existing definitions.
(ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
* config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
* config/avr/avr.c (DEF_BUILTIN): Same.
(avr_init_builtins): Pass down LIBNAME to add_builtin_function.
(avr_expand_builtin): Expand to a vanilla call if a libgcc
implementation is available (DECL_ASSEMBLER_NAME is set).
(avr_fold_absfx): New static function.
(avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
AVR_BUILTIN_ABSLLK.
* config/avr/stdfix.h (abshr, absr, abslr, absllr)
(abshk, absk, abslk, absllk): Provide as static inline functions.
gcc/testsuite/
PR target/54222
* gcc.target/avr/torture/builtins-3-absfx.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/avr/torture/builtins-3-absfx.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/avr/avr-c.c
trunk/gcc/config/avr/avr.c
trunk/gcc/config/avr/builtins.def
trunk/gcc/config/avr/stdfix.h
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list