* c-typeck.c (default_function_array_conversion,
build_function_call): Allow for CONVERT_EXPR as well as NOP_EXPR.
(build_conditional_expr): Apply integer_zerop to orig_op1 and
orig_op2. Don't check them for NOP_EXPR.
(build_c_cast, convert_for_assignment): Don't check for NOP_EXPR
around integer zero.
testsuite:
* gcc.dg/c90-const-expr-4.c, gcc.dg/c99-const-expr-4.c: New tests.
From-SVN: r107990
* src/powerpc/ffi.c: Formatting.
(ffi_prep_args_SYSV): Avoid possible aliasing problems by using unions.
(ffi_prep_args64): Likewise.
From-SVN: r107963
* config/rs6000/rs6000.c (rs6000_stack_t): Remove toc_save_p,
toc_save_offset, toc_size, lr_size.
(rs6000_stack_info): Use memset rather than bss struct copy to init.
Test rs6000_ra_ever_killed last in condition setting lr_save_p.
Adjust for removal of unused rs6000_stack_t fields.
(debug_stack_info): Adjust.
(rs6000_ra_ever_killed): Expand FIND_REG_INC_NOTE. Test for calls
first, and don't bother checking for set/inc of lr on sibcalls.
(rs6000_emit_epilogue): Tidy code restoring stack pointer.
From-SVN: r107962
PR target/25199
* config/i386/i386.md (movqi_1): Only force imovx for alternative
5 if operand 1 is not aligned. Undo previous constraint change.
* config/i386/predicates.md (aligned_operand): Use MEM_ALIGN.
testsuite/
* gcc.target/i386/movq-2.c: New test.
* gcc.target/i386/movq.c: Remove target i?86, instead add
dg-require-effective-target ilp32.
From-SVN: r107955
PR libfortran/25116
* io/transfer.c (data_transfer_init): Don't set the default for
namelist I/O on preconnected files to UNFORMATTED.
From-SVN: r107900
2005-12-02 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (mark_used_vars): New function.
(dump_function_to_file): Dump only used VAR_DECLs.
* gcc.dg/tree-ssa/20031106-6.c: Remove XFAIL.
From-SVN: r107885
2005-12-02 Richard Guenther <rguenther@suse.de>
* convert.c (convert_to_integer): Fix compare for nonpositive
constant to use tree_int_cst_sgn <= 0.
From-SVN: r107882
2005-12-02 Richard Guenther <rguenther@suse.de>
* convert.c (convert_to_integer): Use fold_convert instead
of fold_build1 (NOP_EXPR, ...). Use tree_int_cst_sgn < 0
instead of comparing against 0. Use build_int_cst instead
of converting integer_zero_node.
From-SVN: r107881
* tree.h (TREE_OVERFLOW): Make this flag/predicate specific to
constant nodes, i.e. INTEGER_CST, REAL_CST, etc...
* tree-vrp.c (compare_values): Only check TREE_OVERFLOW for
integer constant comparisons.
ada/
* utils.c (max_size): Only test for TREE_OVERFLOW on INTEGER_CST
nodes.
From-SVN: r107870
2005-12-02 Jon Grimm <jgrimm2@us.ibm.com>
Janis Johnson <janis187@us.ibm.com>
David Edelsohn <dje@watson.ibm.com>
Ben Elliston <bje@au.ibm.com>
* dfp.h, dfp.c: New files.
* Makefile.in (DECNUM, DECNUMINC, LIBDECNUMBER): New variables.
(DECNUM_H): Likewise.
(LIBDEPS, LIBS, BACKEND): Append $(LIBDECNUMBER).
(INCLUDES): Append $(DECNUMINC).
(OBJS-common): Add dfp.o.
(dfp.o): New rule.
* real.h (EXP_BITS): Pinch one bit to ..
(struct real_value): Add decimal field.
(real_format): Change table size, update documentation.
(REAL_MODE_FORMAT): Update for to handle float, decimal float.
(real_from_string3): Declare.
(decimal_single_format): Declare.
(decimal_double_format): Declare.
(decimal_quad_format): Declare.
(REAL_VALUE_TO_TARGET_DECIMAL32): New.
(REAL_VALUE_TO_TARGET_DECIMAL64): New.
(REAL_VALUE_TO_TARGET_DECIMAL128): New.
* real.c: Include dfp.h.
(normalize): Early return for decimal floats.
(do_add): Zero decimal field.
(do_compare): Call do_decimal_compare for decimal floats.
(do_fix_trunc): Likewise, call decimal_do_fix_trunc.
(real_arithmetic): Call decimal_real_arithmetic for decimal
floating point operands.
(real_identical): If a and b are of differing radix, return false.
(real_to_integer): Call decimal_real_to_integer if the value is a
decimal float.
(real_to_integer2): Likewise, call decimal_real_to_integer2.
(real_to_decimal): Likewise, call decimal_real_to_decimal.
(real_to_hexadecimal): Place "N/A" in the return string for
decimal float.
(real_from_string3): New variant, given a mode.
(real_maxval): Use decimal_real_maxval for decimal floats.
(round_for_format): Use decimal_round_for_format for decimals.
(real_convert): Use decimal_real_convert where appropriate.
(significand_size): Handle base 10.
(encode_decimal_single, decode_decimal_single,
encode_decimal_double, decode_decimal_double, encode_decimal_quad,
decode_decimal_quad): New functions.
(decimal_single_format): New.
(decimal_double_format): New.
(decimal_quad_format): New.
* machmode.def: Add SD, DD and TD decimal floating point modes.
* machmode.h (FLOAT_MODE_P, SCALAR_FLOAT_MODE_P, MODES_WIDEN_P):
Include MODE_DECIMAL_FLOAT.
(DECIMAL_FLOAT_MODE_P): New.
* mode-classes.def (MODE_DECIMAL_FLOAT): New mode class.
* genmodes.c (struct mode_data): Add counter field.
(struct mode_data): Update comment for format.
(blank_mode): Initialise counter field.
(new_mode): Increment counter field for each mode defined.
(complete_mode): Handle MODE_DECIMAL_FLOAT, update check for mode
using a format.
(make_complex_modes): Handle modes containing `D'.
(DECIMAL_FLOAT_MODE, FRACTIONAL_DECIMAL_FLOAT_MODE): New.
(make_decimal_float_mode): New.
(reset_float_format): Handle MODE_DECIMAL_FLOAT.
(cmp_modes): Compare counter field if other characteristics
similar.
(emit_real_format_for_mode): Support formats for decimal floats.
* doc/rtl.texi (Machine Modes): Document SD, DD and TDmodes.
Document MODE_DECIMAL_FLOAT.
Co-Authored-By: Ben Elliston <bje@au.ibm.com>
Co-Authored-By: David Edelsohn <dje@watson.ibm.com>
Co-Authored-By: Janis Johnson <janis187@us.ibm.com>
From-SVN: r107861
* parser.c (cp_parser_make_typename_type): Call make_typename_type
with tf_none instead of magic value 0.
(cp_parser_explicit_instantiation): Call do_type_instantiation
with tf_error instead of magic value 1.
(cp_parser_elaborated_type_specifier): Call make_typename_type
with tf_error instead of magic value 1.
(cp_parser_class_name): Likewise.
(cp_parser_lookup_name): Likewise.
From-SVN: r107855
* builtins.def (BUILT_IN_PUTC, BUILT_IN_PUTC_UNLOCKED): New.
* config/pa/pa.c (pa_init_builtins): If we detect
DONT_HAVE_FPUTC_UNLOCKED, set builtin fputc_unlocked to
putc_unlocked.
From-SVN: r107833
2005-12-01 Anthony Green <green@redhat.com>
PR bootstrap/25207
* configure.ac: Make sure we have an alsa library in addition to
the headers. This extra test is required for systems with
multilibs.
* configure: Rebuilt.
From-SVN: r107828