- 07 Mar, 2008 11 commits
-
-
From-SVN: r133015
Joseph Myers committed -
* decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Add comment for the packed array type case. * utils.c (build_template): Use a loop to strip padding or containing records for justified modular types. From-SVN: r133014
Eric Botcazou committed -
From-SVN: r133013
Eric Botcazou committed -
* decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously large alignments specified for types. (validate_alignment): Minor cleanup. From-SVN: r133012
Eric Botcazou committed -
* decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined. (gnat_to_gnu_entity) <E_Record_Type>: Try to get a smaller form of the component for packing, if possible, as well as if a component size clause is specified. <E_Record_Subtype>: For an array type used to implement a packed array, get the component type from the original array type. Try to get a smaller form of the component for packing, if possible, as well as if a component size clause is specified. (round_up_to_align): New function. (make_packable_type): Add in_record parameter. For a padding record, preserve the size. If not in_record and the size is too large for an integral mode, attempt to shrink the size by lowering the alignment. Ditch the padding bits of the last component. Compute sizes and mode manually, and propagate the RM size. Return a BLKmode record type if its size has shrunk. (maybe_pad_type): Use MAX_FIXED_MODE_SIZE instead of BIGGEST_ALIGNMENT. Use Original_Array_Type to retrieve the type in case of an error. Adjust call to make_packable_type. (gnat_to_gnu_field): Likewise. (concat_id_with_name): Minor tweak. * trans.c (larger_record_type_p): New predicate. (call_to_gnu): Compute the nominal type of the object only if the parameter is by-reference. Do the conversion actual type -> nominal type if the nominal type is a larger record. (gnat_to_gnu): Do not require integral modes on the source type to avoid the conversion for types with identical names. (addressable_p): Add gnu_type parameter. If it is specified, do not return true if the expression is not addressable in gnu_type. Adjust recursive calls. * utils.c (finish_record_type): Remove dead code. From-SVN: r133011
Eric Botcazou committed -
PR target/35373 * config/rs6000/rs6000.c (rs6000_legitimize_address): Don't generate reg+const addressing for Altivec modes. Don't generate reg+reg addressing for TFmode or TDmode quantities. From-SVN: r133008
Peter Bergner committed -
revert: re PR c++/35049 (g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__')) cp: 2008-03-07 Paolo Bonzini <bonzini@gnu.org> Revert: 2008-02-06 Douglas Gregor <doug.gregor@gmail.com> PR c++/35049 PR c++/35096 * typeck.c (structural_comptypes): Call cp_comptypes. (comptypes): New; called from the C/C++ common bits to perform strict checks. (cp_comptypes): Renamed from comptypes, which is already used, with a different signature, by the C++ front end. (build_reinterpret_cast_1): Call cp_comptypes. (ptr_reasonably_similar): Ditto. * decl.c (decls_match): Ditto. * cvt.c (convert_to_reference): Ditto. * cp-tree.h (same_type_p): Ditto. (same_or_base_type_p): Ditto. (comptypes): Rename to cp_comptypes. * pt.c (canonical_type_parameter): Call cp_comptypes. objcp: 2008-03-07 Paolo Bonzini <bonzini@gnu.org> Revert: 2008-02-07 Andreas Tobler <andreast-list@fgznet.ch> Douglas Gregor <doug.gregor@gmail.com> PR bootstrap/35115 * objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes. From-SVN: r133007
Paolo Bonzini committed -
* config/abi/pre/gnu.ver: Move <system_error> related symbols to GLIBCXX_3.4.11 symbol version. * testsuite/util/testsuite_abi.cc (check_version): Allow GLIBCXX_3.4.11. From-SVN: r133006
Jakub Jelinek committed -
2008-03-07 Paolo Bonzini <bonzini@gnu.org> * c-common.c (vector_types_convertible_p): Call langhook instead of comptypes. cp: 2008-03-07 Paolo Bonzini <bonzini@gnu.org> * cp-objcp-common.c (cxx_types_compatible_p): Remove obsolete test for equivalence between pointer and references. From-SVN: r133002
Paolo Bonzini committed -
fixincludes/ 2008-03-07 Peter O'Gorman <pogma@thewrittenword.com> PR c++/20366 * inclhack.def (AAB_aix_stdio): Hack stdio.h for -D_LARGE_FILES. * fixincl.x: Regenerate. * tests/base/stdio.h: Add test. gcc/testsuite/ 2008-03-07 Peter O'Gorman <pogma@thewrittenword.com> PR c++/20366 * g++.dg/other/pr20366.C: New test. From-SVN: r133001
Peter O'Gorman committed -
From-SVN: r132998
GCC Administrator committed
-
- 06 Mar, 2008 19 commits
-
-
re PR tree-optimization/35402 (Store CCP will not inline static const variable which is default initialized) 2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com> PR tree-opt/35402 * tree-ssa-ccp.c (get_symbol_constant_value): Handle integral and scalar float variables which have a NULL DECL_INITIAL. 2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com> PR tree-opt/35402 * gcc.dg/tree-ssa/ssa-store-ccp-1.c: New test. From-SVN: r132991
Andrew Pinski committed -
libjava/ * HACKING: Fix grep patterns. From-SVN: r132988
Ralf Wildenhues committed -
2008-03-06 Chris Jefferson <chris@bubblescope.net> Paolo Carlini <pcarlini@suse.de> PR libstdc++/35480 * include/tr1/tuple (operator==, operator<): Fix. * include/std/tuple (operator==, operator<): Likewise. * testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc: New. * testsuite/20_util/tuple/comparison_operators/35480.cc: Likewise. Co-Authored-By: Paolo Carlini <pcarlini@suse.de> From-SVN: r132983
Chris Jefferson committed -
libcpp 2008-03-06 Markus Milleder <markus.milleder@generali.at> PR preprocessor/35458 * mkdeps.c (munge): Quote '#' with a '\'. gcc/testsuite 2008-03-06 Markus Milleder <markus.milleder@generali.at> PR preprocessor/35458 * gcc.dg/cpp/cmdlne-M-2.c: New file. * gcc.dg/cpp/cmdlne-M-2#.h: New file. * gcc.dg/cpp/#cmdlne-M-2.h: New file. From-SVN: r132982
Markus Milleder committed -
dwarf2out.c (dwarf2out_frame_debug_expr): Consult the dwarf_register_span hook when emitting unwind information for... * dwarf2out.c (dwarf2out_frame_debug_expr): Consult the dwarf_register_span hook when emitting unwind information for register-to-memory saves. * config/rs6000/rs6000.c (spe_synthesize_frame): Delete. (rs6000_frame_related): Remove call to spe_synthesize_frame. From-SVN: r132981
Nathan Froyd committed -
From-SVN: r132979
Jakub Jelinek committed -
* gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes for the same VAR_DECL. * testsuite/libgomp.c/atomic-3.c: New test. From-SVN: r132977
Jakub Jelinek committed -
. * MAINTAINERS: Update for treelang deletion. gcc 2008-03-05 Tom Tromey <tromey@redhat.com> * treelang: Delete. * doc/standards.texi (Standards): Don't mention treelang. * doc/invoke.texi (Overall Options): Don't mention treelang. * doc/install.texi (Prerequisites): Don't mention bison or treelang. (Configuration): Don't mention treelang. (Building): Likewise. * doc/frontends.texi (G++ and GCC): Don't mention treelang. gcc/testsuite * lib/treelang-dg.exp, lib/treelang.exp: Delete. * treelang: Delete. gcc/testsuite/treelang Removed gcc/treelang Removed From-SVN: r132976
Tom Tromey committed -
* patch_tester.sh (usage): Watermark is not lexicographic. Load $STATE/defaults if it exists. (selfexec): Use $0. (apply_patch): Handle deletions. (bootntest): Handle default settings. From-SVN: r132974
Tom Tromey committed -
simplify-rtx.c (simplify_subreg): Remove useless shifts from word-extractions out of a multi-word object. 2008-03-06 Paolo Bonzini <bonzini@gnu.org> * simplify-rtx.c (simplify_subreg): Remove useless shifts from word-extractions out of a multi-word object. From-SVN: r132971
Paolo Bonzini committed -
PR fortran/33197 * intrinsic.c (add_functions): Add simplification routines for ERF, DERF, ERFC and DERFC. * decl.c (gfc_match_suffix, gfc_match_subroutine): Change GNU extensions into Fortran 2008 features. * intrinsic.h (gfc_simplify_erf, gfc_simplify_erfc): New prototypes. * simplify.c (gfc_simplify_erf, gfc_simplify_erfc): New functions. From-SVN: r132970
Francois-Xavier Coudert committed -
2008-03-06 Richard Guenther <rguenther@suse.de> * tree.def (BIT_FIELD_REF): Constrain result type and its precision. * tree-cfg.c (verify_expr): Verify BIT_FIELD_REF constraints on result type and precision. * expr.c (get_inner_reference): Set unsignedp based on the result type of BIT_FIELD_REF. * tree.h (BIT_FIELD_REF_UNSIGNED): Remove. * tree-sra.c (instantiate_element): Do not set BIT_FIELD_REF_UNSIGNED. (try_instantiate_multiple_fields): Likewise. Use the correct type for BIT_FIELD_REF. (sra_build_assignment): Likewise. (sra_build_elt_assignment): Likewise. (sra_explode_bitfield_assignment): Likewise. * print-tree.c (print_node): Do not check BIT_FIELD_REF_UNSIGNED. * tree-vect-transform.c (vect_create_epilog_for_reduction): Do not set BIT_FIELD_REF_UNSIGNED. (vectorizable_load): Likewise. From-SVN: r132969
Richard Guenther committed -
2008-03-06 Andreas Krebbel <krebbel1@de.ibm.com> * cse.c (cse_extended_basic_block): Invalidate artificial defs at bb start. From-SVN: r132968
Andreas Krebbel committed -
2008-03-06 Richard Guenther <rguenther@suse.de> * alias.c (struct alias_set_entry): Move has_zero_child field to pack with alias_set. From-SVN: r132967
Richard Guenther committed -
2008-03-05 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386-modes.def: Use 4 byte alignment on DI for 32bit host. From-SVN: r132966
H.J. Lu committed -
From-SVN: r132964
Ian Lance Taylor committed -
PR ada/35186 * decl.c (maybe_pad_type): Avoid padding an integral type when bumping its alignment is sufficient. From-SVN: r132963
Eric Botcazou committed -
2008-03-05 Kenneth Zadeck <zadeck@naturalbridge.com> * fwprop.c (update_df): Support width and offset parameters of df_ref_create. * ra-conflict.c (mark_reg_store, clear_reg_in_live, global_conflicts): Change DF_REF_EXTRACT to either DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART. * df-scan.c (df_ref_record, df_defs_record, df_ref_create_structure, df_def_record_1, df_uses_record, df_get_conditional_uses, df_get_call_refs, df_insn_refs_collect, df_bb_refs_collect, df_entry_block_defs_collect, df_exit_block_uses_collect): Support new width and offset fields. (ref_extract_pool): New storage pool. (df_free_ref): New function. (df_reg_chain_unlink, df_free_collection_rec, df_sort_and_compress_refs): Call df_free_ref. (df_ref_equal_p, df_ref_compare): Compare offset and width fields of df_ref_extract. (df_ref_create_structure): Allocate df_ref_extract if offset and width fields are used. (df_def_record_1): Get offset and width from ZERO_EXTRACT. (df_uses_record): Get offset and width from ZERO_EXTRACT and SIGN_EXTRACT. * global.c (build_insn_chain): Change DF_REF_EXTRACT to either DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART. * df.h (df_ref_flags): Change DF_REF_EXTRACT to either DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART. (df_ref_extract): New structure. (DF_REF_WIDTH, DF_REF_OFFSET): New macros. (df_ref_create): Add width and offset parameters. From-SVN: r132962
Kenneth Zadeck committed -
From-SVN: r132960
GCC Administrator committed
-
- 05 Mar, 2008 10 commits
-
-
2008-03-05 Richard Guenther <rguenther@suse.de> * tree-ssa-structalias.c (get_constraint_for_component_ref): Use ranges_overlap_p. (offset_overlaps_with_access): Rename to ranges_overlap_p and move ... * tree-flow-inline.h (ranges_overlap_p): ... here. * tree.h (get_inner_reference, handled_component_p): Update comments. * tree.h (record_component_aliases, get_alias_set, alias_sets_conflict_p, alias_sets_must_conflict_p, objects_must_conflict_p): Move declarations ... * alias.h (record_component_aliases, get_alias_set, alias_sets_conflict_p, alias_sets_must_conflict_p, objects_must_conflict_p): ... here. Include coretypes.h. * Makefile.in (ALIAS_H): Add coretypes.h dependency. From-SVN: r132950
Richard Guenther committed -
* cfg.c: Include tree-flow.h. (remove_edge_raw): Call redirect_edge_var_map_clear. (redirect_edge_succ_nodup): Call redirect_edge_var_map_dup. * tree-flow-inline.h (redirect_edge_var_map_def): New. (redirect_edge_var_map_result): New. * tree-cfgcleanup.c (remove_forwarder_block_with_phi): Replace PENDING_STMT use with redirect_edge_var_map_*. * tree-ssa.c (edge_var_maps): New definition. (redirect_edge_var_map_add): New. (redirect_edge_var_map_clear): New. (redirect_edge_var_map_dup): New. (redirect_edge_var_map_vector): New. (redirect_edge_var_map_destroy): New. (ssa_redirect_edge): Replace PENDING_STMT use with redirect_edge_var_map_*. (flush_pending_stmts): Same. (delete_tree_ssa): Destroy edge var map. * tree-flow.h (struct _edge_var_map): New. Define edge_var_map vector type. Declare redirect_edge_var_map_* prototypes. * Makefile.in (cfg.o): Depend on TREE_FLOW_H. * tree-cfg.c (reinstall_phi_args): Replace PENDING_STMT use with redirect_edge_var_map_*. From-SVN: r132903
Aldy Hernandez committed -
From-SVN: r132901
Jakub Jelinek committed -
2008-03-05 Richard Guenther <rguenther@suse.de> PR tree-optimization/35472 * tree-ssa-dse.c (dse_optimize_stmt): Do not delete a store whose single use_stmt has a overlapping set of loaded and stored symbols as that use_stmt might be a noop assignment then. * gcc.c-torture/execute/pr35472.c: New testcase. From-SVN: r132899
Richard Guenther committed -
2008-03-05 Joel Sherrill <joel.sherrill@oarcorp.com> * gthr-rtems.h: Implement __gthread_mutex_destroy. From-SVN: r132897
Joel Sherrill committed -
2008-03-05 Richard Guenther <rguenther@suse.de> PR c++/35336 * tree.def (BIT_FIELD_REF): Document that operands 1 and 2 should be constants. * tree-cfg.c (verify_expr): Verify it. * fold-const.c (fold_truthop): Remove code generating BIT_FIELD_REFs of structure bases. (fold_binary): Likewise. (fold_ternary): Position and size of BIT_FIELD_REFs are always host integers. (make_bit_field_ref): Remove. (optimize_bit_field_compare): Remove. (all_ones_mask_p): Remove. From-SVN: r132894
Richard Guenther committed -
2008-03-05 Gabor Loki <loki@gcc.gnu.org> PR gcc/33009 * rtl-factoring.c (clear_regs_live_in_seq): Fix backward steps. (split_block_and_df_analyze): New. Split basic block and rebuild dataflow. (block_label_after): Use SPLIT_BLOCK_AND_DF_ANALYZE instead of SPLIT_BLOCK. (split_pattern_seq): Likewise. (erase_matching_seqs): Likewise. (split_pattern_seq): Skip return insn in case of REG_NORETURN note. PR testsuite/33009 * gcc.c-torture/compile/pr11832.c: Check -frtl-abstract-sequences. * gcc.c-torture/compile/pr33009.c: Likewise. From-SVN: r132893
Gabor Loki committed -
2008-03-05 Victor Kaplansky <victork@gcc.gnu.org> PR 31341 * gcc.dg/vect/pr31041.c: Fix. From-SVN: r132892
Victor Kaplansky committed -
PR libfortran/35293 * lib/lib/target-supports.exp (check_effective_target_fd_truncate): New. * gfortran.fortran-torture/execute/list_read_1.x, ... gfortran.dg/write_back.f: Gate test on effective_target fd_truncate. (missing PR ChangeLog decoration) From-SVN: r132889
Hans-Peter Nilsson committed -
PR libfortran/35293 * io/unix.c (fd_truncate): Fold s->special_file case into success case of ftruncate/chsize call instead of the failure case. Make failure case actually return failure. Properly update stream pointers on failure. Call runtime_error for targets without neither ftruncate nor chsize where such a call would be needed. From-SVN: r132888
Hans-Peter Nilsson committed
-