[PATCH PING, c]: Suffix for __float128 and __float80 FP constants

Uros Bizjak ubizjak@gmail.com
Mon Jul 2 15:45:00 GMT 2007


Hello!

A patch that implements 'q' and 'w' suffixes for __float128 and 
__float80 FP constants [1] is still waiting for a review/approval from a 
c maintainer.

libcpp/ChangeLog:

2007-06-26 Uros Bizjak <ubizjak@gmail.com>

	* include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
	Add new constants.
	* expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
	suffixes.  Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
	for 'q' or 'Q' suffixes.


gcc/ChangeLog:

2007-06-26 Uros Bizjak <ubizjak@gmail.com>

	* targhooks.h (default_mode_for_suffix): New function declaration.
	* targhooks.c (default_mode_for_suffix): New default target hook.
	* target.h (struct c): New structure in the targetm struct.
	(mode_for_suffix): New target hook as part of struct c.
	target-def.h (TARGET_C_MODE_FOR_SUFFIX): Define as
	default_mode_for_suffix.
	(TARGET_C): New define.
	* c-lex.c: Include "target.h".
	(interpret_float): Use targetm.c.mode_for_suffix to determine
	the mode for a given non-standard suffix.
	Makefile.in (c-lex.o): Depend on $(TARGET_H).


	* config/i386/i386.c (ix86_c_mode_for_suffix): New static function.
	(TARGET_C_MODE_FOR_SUFFIX): Define to ix86_c_mode_for_suffix.


	* doc/extend.texi (Floating Types): New node.  Document __float80 and
	__float128 types.  Document 'w', 'W', 'q' and 'Q' suffixes.


testsuite/ChangeLog:

2007-06-26 Uros Bizjak <ubizjak@gmail.com>

	* gcc.dg/const-float80.c : New test.
	* gcc.dg/const-float128.c : New test.
	* gcc.dg/const-float80-ped.c : New test.
	* gcc.dg/const-float128-ped.c : New test.



Thanks,
Uros.

[1] http://gcc.gnu.org/ml/gcc-patches/2007-06/msg01927.html



More information about the Gcc-patches mailing list