PR tree-optimization/45714
* tree-vect-stmts.c (vect_transform_stmt): Use a dummy statement
created in vectorizable_call instead of the original statement in
def stmt updates.
From-SVN: r164420
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Use record
type instead of enumeral type as the dummy type built for the template
type of fat pointers.
From-SVN: r164417
* gcc-interface/gigi.h (get_elaboration_procedure): Declare.
(gnat_zaplevel): Likewise.
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not force global
binding level for an external constant.
<E_Constant>: Force the local context and create a fake scope before
translating the defining expression of an external constant.
<object>: Treat external constants at the global level explicitly for
renaming declarations.
(elaborate_expression_1): Force the variable to be static if the
expression is global.
* gcc-interface/trans.c (get_elaboration_procedure): New function.
(call_to_gnu): Use it.
(gnat_to_gnu): Likewise.
<N_Object_Declaration>: Do not test Is_Public to force the creation of
an initialization variable.
(add_decl_expr): Discard the statement if the declaration is external.
* gcc-interface/utils.c (gnat_pushdecl): Do not put the declaration in
the current block if it is external.
(create_var_decl_1): Do not test Is_Public to set TREE_STATIC.
(gnat_zaplevel): New global function.
From-SVN: r164416
* gcc-interface/decl.c (gnat_to_gnu_entity): Explicitly test _LEVEL
variables against zero in all cases.
(rest_of_type_decl_compilation): Likewise.
* gcc-interface/trans.c (gigi): Pass properly typed constants to
create_var_decl.
(call_to_gnu): Fix formatting.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(Exception_Handler_to_gnu_zcx): Likewise.
(gnat_to_gnu) <N_Object_Declaration>: Short-circuit handling of
constant
expressions in presence of a freeze node.
From-SVN: r164415
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Look into
expressions for external constants that are aggregates.
* gcc-interface/utils2.c (build_simple_component_ref): If the field
is an inherited component in an extension, look through the extension.
From-SVN: r164414
2010-09-19 Paolo Carlini <paolo.carlini@oracle.com>
* src/hash_bytes.cc: Compile load_bytes and shift_mix only when
__SIZEOF_SIZE_T__ == 8.
From-SVN: r164410
PR tree-optimization/45605
* cgraphunit.c (cgraph_analyze_functions): Allocate bitmap obstack.
* gimple-fold.c (static_object_in_other_unit_p): New function.
(canonicalize_constructor_val): Use it.
(get_symbol_constant_value): Be reaqdy for canonicalize_constructor_val
returning NULL.
(gimple_fold_obj_type_ref_known_binfo): Use static_object_in_other_unit_p.
From-SVN: r164402
2010-09-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45709
* tree-inline.c (copy_phis_for_bb): Delay commit of edge
insertions until after all PHI nodes of the block are processed.
* g++.dg/torture/pr45709-2.C: New testcase.
From-SVN: r164397
2010-09-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45709
* tree-inline.c (copy_phis_for_bb): Fixup new_edge when
we splitted it.
* g++.dg/torture/pr45709.C: New testcase.
From-SVN: r164390
* hash.c: Include objc-private/hash.h instead of objc/hash.h.
* objc/sarray.h: Moved into objc/deprecated/sarray.h;
objc/sarray.h replaced with a placeholder including the file from
the deprecated/ directory.
* objc-private/sarray.h: New file (private copy of sarray.h).
* hash.c: Include <assert.h> instead of "assert.h"
* sarray.c: Include <assert.h> instead of "assert.h". Include
objc-private/sarray.h instead of objc/sarray.h.
* selector.c: Include objc-private/sarray.h instead of
objc/sarray.h.
* sendmsg.c: Include <assert.h>. Include objc-private/sarray.h
instead of objc/sarray.h.
* Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.
From-SVN: r164389
2010-09-17 Sebastian Pop <sebastian.pop@amd.com>
Revert commit: 2009-12-16 Ben Elliston <bje@au.ibm.com>
* tree-data-ref.c (dot_rdg_1): Added back.
(dot_rdg): Same. Added "#if 0" around system call.
From-SVN: r164380
stack boundary after stack alignment.
gcc/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* calls.c (expand_call): Make sure that all variable sized
adjustments are multiple of preferred stack boundary after
stack alignment.
gcc/testsuite/
2010-09-17 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/45234
* gcc.dg/torture/stackalign/alloca-5.c: New.
From-SVN: r164377
* config/rx/rx.c (valid_psw_flag): New.
(rx_expand_builtin): Call it for setpsw/clrpsw.
(rx_expand_builtin_mvtipl): Pass an integer to IN_RANGE, not an
RTX.
* config/rx/rx.md (bitclr): Don't mark the output as early-clobber.
(bitclr_in_memory): Likewise.
(clrspw, setpsw, mvfc, mvtc, mvtipl): Make volatile.
From-SVN: r164376
* objc-private/objc-list.h (list_remove_elem): Unused function
removed. (list_nth): Unused function removed. (list_find):
Unused function removed. (list_lenght): Unused function removed.
Also, fixed an error in my last commit by adding back
objc/hash.h and objc/objc-list.h that had not been committed.
From-SVN: r164374
* objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
replaced with a placeholder including the file from the
deprecated/ directory.
* objc/objc-api.h: Updated includes.
* objc/typedstream.h: Updated includes.
* objc-private/hash.h: New file (private copy of hash.h).
* objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
objc/objc-list.h replaced with a placeholder including the file
from the deprecated/ directory.
* objc-private/objc-list.h: New file (private copy of objc-list.h).
* init.c: Include objc-private/hash.h and objc-private/objc-list.h
instead of objc/hash.h and objc/objc-list.h.
* selector.c: Same change.
* class.c: Added include <string.h>, which used to be implicitly included
when hash.h was included.
* exception.c: Same change.
* objects.c: Same change.
* sarray.c: Same change.
* sendmsg.c: Same change.
* Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
(OBJC_H): Removed hash.h and objc-list.h
From-SVN: r164373
* lto-cgraph.c (input_overwrite_node): Do not set DECL_EXTERNAL when
processing clone.
* lto.c (lto_materialize_function): Do not tamper with STATIC and
EXTERNAL flags.
From-SVN: r164354
Fix PR45680.
2010-09-16 Reza Yazdani <reza.yazdani@amd.com>
PR bootstrap/45680
* config/i386/i386.c (min_insn_size): Moved out of the
ASM_OUTPUT_MAX_SKIP_PAD ifdef.
From-SVN: r164345