Commit Graph

101901 Commits

Author SHA1 Message Date
Daniel Kraft
69dcd06ab8 gfortran.h (gfc_build_intrinsic_call): New method.
2010-07-28  Daniel Kraft  <d@domob.eu>

	* gfortran.h (gfc_build_intrinsic_call): New method.
	* expr.c (gfc_build_intrinsic_call): New method.
	* simplify.c (range_check): Ignore non-constant value.
	(simplify_bound_dim): Handle non-variable expressions and
	fix memory leak with non-free'ed expression.
	(simplify_bound): Handle non-variable expressions.
	(gfc_simplify_shape): Ditto.
	(gfc_simplify_size): Ditto, but only in certain cases possible.

2010-07-28  Daniel Kraft  <d@domob.eu>

	* gfortran.dg/bound_8.f90: New test.

From-SVN: r162648
2010-07-28 19:06:40 +02:00
Jakub Jelinek
05b5ea3495 re PR debug/45105 (-fcompare-debug failure at -Os)
PR debug/45105
	* gcse.c (hoist_code): Use FOR_BB_INSNS macro.

	* gcc.dg/pr45105.c: New test.

From-SVN: r162647
2010-07-28 19:01:05 +02:00
Jakub Jelinek
652c4638a0 re PR debug/45103 (DW_OP_reg* has too large valid range for noreturn funcs)
PR debug/45103
	* dwarf2out.c (dwarf2out_var_location): Always consider
	NOTE_DURING_CALL_P notes, even when not followed by real instructions.

From-SVN: r162646
2010-07-28 19:00:06 +02:00
Maxim Kuvyrkov
fb039b24f5 re PR rtl-optimization/45107 (ICE: in insert_expr_in_table, at gcse.c:1213 with -Os -gcse-las (another one))
PR rtl-optimization/45107
	* gcse.c (hash_scan_set): Use max_distance for gcse-las.

	PR rtl-optimization/45107
	* gcc.dg/pr45107.c: New test.

From-SVN: r162645
2010-07-28 16:50:14 +00:00
Richard Guenther
7a95d078fa tree-ssa-ccp.c: Remove comment regarding STORE-CCP.
2010-07-28  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-ccp.c: Remove comment regarding STORE-CCP.
	(set_lattice_value): Do not query an old default value.
	(get_value_for_expr): New function.  Properly canonicalize
	float values.
	(ccp_visit_phi_node): Use it.

From-SVN: r162638
2010-07-28 16:03:09 +00:00
Chung-Lin Tang
12ffc7d5f6 arm.c (arm_pcs_default): Remove static.
* config/arm/arm.c (arm_pcs_default): Remove static.
	* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_PCS or
	__ARM_PCS_VFP to indicate soft/hard-float calling convention.
	(arm_pcs_default): Declare.

From-SVN: r162637
2010-07-28 15:40:58 +00:00
David Yuste
331a9a590d * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r162636
2010-07-28 17:23:55 +02:00
Iain Sandoe
b2a0ce24ec part 3 of darwin64 PPC ABI changes
* config/rs6000/rs6000.c (rs6000_override_options): 
	Use TARGET_MACHO inline, move darwin_one_byte_bool from here...
	... to darwin_rs6000_override_options.
	(rs6000_return_in_memory): Update preceding comment for darwin
	64 bit ABI.  Use TARGET_MACHO inline.
	(rs6000_darwin64_struct_check_p): New.
	(function_arg_advance): Use rs6000_darwin64_struct_check_p.
	(function_arg): Likewise.
	(rs6000_arg_partial_bytes): Likewise.
	(rs6000_function_value): Likewise.

From-SVN: r162635
2010-07-28 14:47:11 +00:00
Andi Kleen
c71eb2b76c * lto-opts.c (lto_file_read_options): Add loop over all inputs.
From-SVN: r162633
2010-07-28 14:30:45 +00:00
Andi Kleen
d720b8692c * Make-lang.in (lto.o): Add dependency to splay-tree.h
From-SVN: r162632
2010-07-28 14:06:45 +00:00
Andi Kleen
90e26247ab Add Changelog too
From-SVN: r162631
2010-07-28 14:05:59 +00:00
Andi Kleen
ba4141f488 lto-plugin.c (translate): Remove debug fprintf.
* lto-plugin.c (translate): Remove debug fprintf.

From-SVN: r162630
2010-07-28 14:05:39 +00:00
Richard Guenther
3abd6c1abf re PR target/44903 (FAIL: gcc.dg/pr35258.c execution test)
2010-07-28  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44903
	* builtins.c (fold_builtin_memory_op): On STRICT_ALIGNMENT
	targets try harder to not generate unaligned accesses.

From-SVN: r162624
2010-07-28 10:32:54 +00:00
Maxim Kuvyrkov
bb801fa63c re PR rtl-optimization/45101 (ICE: in insert_expr_in_table, at gcse.c:1213 with -gcse-las)
PR rtl-optimization/45101
	* gcc.dg/pr45101.c: New test.

From-SVN: r162623
2010-07-28 10:32:10 +00:00
Maxim Kuvyrkov
4bcaf35411 re PR rtl-optimization/45101 (ICE: in insert_expr_in_table, at gcse.c:1213 with -gcse-las)
PR rtl-optimization/45101
	* gcse.c (hash_scan_set): Fix argument ordering of insert_expr_in_table
	for gcse-las.

From-SVN: r162622
2010-07-28 10:09:53 +00:00
Eric Botcazou
c2cf2f4a61 re PR tree-optimization/44885 (miscompilation of gnat.dg/aliasing3.adb after mem-ref2)
PR tree-optimization/44885
	* tree-sra.c (find_param_candidates): Skip pointer types to arrays
	with non-aliased component.

From-SVN: r162621
2010-07-28 10:03:00 +00:00
Joseph Myers
eea13eaddc darwin-driver.c (SWITCH_TAKES_ARG, [...]): Remove.
* config/darwin-driver.c (SWITCH_TAKES_ARG,
	WORD_SWITCH_TAKES_ARG): Remove.
	* cppspec.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Remove.
	* defaults.h (DEFAULT_SWITCH_TAKES_ARG,
	DEFAULT_WORD_SWITCH_TAKES_ARG): Move from gcc.h.
	(SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move default
	definitions from gcc.c.
	* gcc.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG): Move to
	defaults.h.
	* gcc.h (DEFAULT_SWITCH_TAKES_ARG, DEFAULT_WORD_SWITCH_TAKES_ARG):
	Move to defaults.h.
	* opts-common.c: Include tm.h.
	(decode_cmdline_option): Use SWITCH_TAKES_ARG and
	WORD_SWITCH_TAKES_ARG to count arguments to unknown options.
	Handle more than one argument.  Set canonical_option_num_elements.
	(decode_cmdline_options_to_array): Set
	canonical_option_num_elements and trailing elements of
	canonical_option.
	* opts.h (struct cl_decoded_option): Allow four elements in
	canonical_option.  Add field canonical_option_num_elements.
	* Makefile.in (opts-common.o): Update dependencies.

ada:
	* gcc-interface/misc.c (gnat_init_options): Ignore erroneous
	options.  Check canonical_option_num_elements on options copied.

fortran:
	* gfortranspec.c (SWITCH_TAKES_ARG, WORD_SWITCH_TAKES_ARG):
	Remove.

From-SVN: r162620
2010-07-28 10:36:21 +01:00
Tobias Burnus
57e15568e8 re PR fortran/45077 (ICE with -fwhole-file in fold_convert_loc, at fold-const.c:2021)
2010-07-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45077
        * trans-types.c (gfc_get_derived_type): Fix DT declaration
        from modules for whole-file mode.

2010-07-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/45077
        * gfortran.dg/whole_file_24.f90: New.

From-SVN: r162619
2010-07-28 10:44:29 +02:00
Eric Botcazou
b4351367ce re PR middle-end/44790 (Bootstrap fails after MEM-REF merge)
PR middle-end/44790
	PR middle-end/44993
	* expr.c (expand_expr_real_1) <MEM_REF>: Revert latest change.  Make
	sure the base has address_mode before adding the offset.

From-SVN: r162618
2010-07-28 07:44:34 +00:00
Eric Botcazou
51680dfb02 Fix typos
From-SVN: r162617
2010-07-28 05:23:28 +00:00
Xinliang David Li
880a145176 Fix to expose more LIM when creating mem_ref
From-SVN: r162616
2010-07-28 05:08:24 +00:00
GCC Administrator
6fb58a378d Daily bump.
From-SVN: r162615
2010-07-28 00:17:01 +00:00
Jason Merrill
462aa169ac pt.c (tsubst_expr): Handle getting an AGGR_INIT_EXPR from build_value_init.
* pt.c (tsubst_expr) [DECL_EXPR]: Handle getting an AGGR_INIT_EXPR
	from build_value_init.
	* init.c (build_value_init_noctor): Give error for unknown array
	bound.

From-SVN: r162603
2010-07-27 18:06:03 -04:00
Bernd Schmidt
418e920fc6 rtl.def (DEBUG_INSN, [...]): Swap operands 4 and 5.
* rtl.def (DEBUG_INSN, INSN, JUMP_INSN, CALL_INSN, NOTE): Swap operands
	4 and 5.
	* rtl.h (PATTERN, INSN_LOCATOR, NOTE_DATA, NOTE_DELETED_LABEL_NAME,
	NOTE_BLOCK, NOTE_EH_HANDLER, NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION,
	NOTE_KIND, LABEL_NUSES, LABEL_REFS): Adjust accordingly.
	* gengtype.c (adjust_field_rtx_def): Swap operands 4 and 5 of
	CODE_LABELs and NOTEs.
	* caller-save.c (init_caller_save): Fix up gen_rtx_INSN call.
	* combine.c (try_combine): Likewise.
	* ira.c (setup_prohibited_mode_move_regs): Likewise.
	* print-rtl.c (print_rtx): Start REG_NOTES on a new line.

From-SVN: r162602
2010-07-27 21:52:39 +00:00
Joseph Myers
5f20c6574d coretypes.h (struct cl_option_handlers): Declare.
* coretypes.h (struct cl_option_handlers): Declare.
	* hooks.c (hook_int_size_t_constcharptr_int_0): Remove.
	* hooks.h (hook_int_size_t_constcharptr_int_0): Remove.
	* langhooks-def.h (lhd_handle_option): Declare.
	(LANG_HOOKS_HANDLE_OPTION): Use lhd_handle_option.
	* langhooks.c (lhd_handle_option): New.
	* langhooks.h (struct lang_hooks): Update prototype and return
	value type of handle_option hook.
	* optc-gen.awk: Generate target_flags_explicit definition for the
	driver.
	* opts-common.c: Include diagnostic.h.
	(handle_option): Move from opts.c.  Update prototype and return
	value type.  Use handlers structure.
	(read_cmdline_option): Move from opts.c.  Update prototype.  Use
	handlers structure.
	(set_option): Move from opts.c.
	* opts.c (common_handle_option): Update prototype and return value
	type.  Update calls to handle_option and enable_warning_as_error.
	(unknown_option_callback, post_handling_callback,
	lang_handle_option, target_handle_option): New.
	(handle_option, read_cmdline_option): Move to opts-common.c.
	(read_cmdline_options): Update prototype.  Update call to
	read_cmdline_option.
	(decode_options): Initialize and use handlers structure.
	(set_option): Move to opts-common.c.
	(enable_warning_as_error): Update prototype.  Update call to
	handle_option.
	* opts.h (struct cl_option_handler_func, struct
	cl_option_handlers): New.
	(handle_option, enable_warning_as_error): Update prototypes.
	(read_cmdline_option): Declare.
	* Makefile.in (opts-common.o): Update dependencies.

ada:
	* gcc-interface/misc.c (gnat_handle_option): Update prototype and
	return value type.  Don't check for missing arguments here.

c-family:
	* c-common.h (c_common_handle_option): Update prototype and return
	value type.
	* c-opts.c (c_common_handle_option): Update prototype and return
	value type.  Update calls to handle_option and
	enable_warning_as_error.

fortran:
	* gfortran.h (gfc_handle_option): Update prototype and return
	value type.
	* options.c (gfc_handle_option): Update prototype and return value
	type.

java:
	* lang.c (java_handle_option): Update prototype and return value
	type.

lto:
	* lto-lang.c (lto_handle_option): Update prototype and return
	value type.  Remove duplicate assignment to result.

From-SVN: r162601
2010-07-27 22:23:53 +01:00
Maxim Kuvyrkov
689d6c4a78 re PR rtl-optimization/40956 (Constants are never candidates for hoisting)
PR rtl-optimization/40956
	PR target/42495
	PR middle-end/42574
	* gcc.target/arm/pr40956.c, gcc.target/arm/pr42495.c,
	* gcc.target/arm/pr42574.c: Add tests.

From-SVN: r162600
2010-07-27 21:06:31 +00:00
Maxim Kuvyrkov
ec3728adb8 arm.c (params.h): Include.
* config/arm/arm.c (params.h): Include.
	(arm_override_options): Tune gcse-unrestricted-cost.
	* config/arm/t-arm (arm.o): Define dependencies.

From-SVN: r162598
2010-07-27 19:50:08 +00:00
Maxim Kuvyrkov
cad9aa150b re PR target/42495 (redundant memory load)
PR target/42495
	PR middle-end/42574
	* basic-block.h (get_dominated_to_depth): Declare.
	* dominance.c (get_dominated_to_depth): New function, use
	get_all_dominated_blocks as a base.
	(get_all_dominated_blocks): Use get_dominated_to_depth.

	* gcse.c (occr_t, VEC (occr_t, heap)): Define.
	(hoist_exprs): Remove.
	(alloc_code_hoist_mem, free_code_hoist_mem): Update.
	(compute_code_hoist_vbeinout): Add debug print outs.
	(hoist_code): Partially rewrite, simplify.  Use get_dominated_to_depth.

	* params.def (PARAM_MAX_HOIST_DEPTH): New parameter to avoid
	quadratic behavior.
	* params.h (MAX_HOIST_DEPTH): New macro.
	* doc/invoke.texi (max-hoist-depth): Document.

From-SVN: r162597
2010-07-27 19:48:15 +00:00
Maxim Kuvyrkov
9b9ee6d392 re PR rtl-optimization/40956 (Constants are never candidates for hoisting)
PR rtl-optimization/40956
	* config/arm/arm.c (thumb1_size_rtx_costs): Fix cost of simple
	constants.

From-SVN: r162596
2010-07-27 19:46:26 +00:00
Maxim Kuvyrkov
d37c3c6271 re PR target/42495 (redundant memory load)
PR target/42495
	PR middle-end/42574
	* config/arm/arm.c (legitimize_pic_address): Use
	gen_calculate_pic_address pattern to emit calculation of PIC address.
	(will_be_in_index_register): New function.
	(arm_legitimate_address_outer_p, thumb2_legitimate_address_p,)
	(thumb1_legitimate_address_p): Use it provided !strict_p.
	* config/arm/arm.md (calculate_pic_address): New expand and split.

From-SVN: r162595
2010-07-27 19:44:51 +00:00
Maxim Kuvyrkov
3393e880c6 re PR target/42495 (redundant memory load)
PR target/42495
	PR middle-end/42574
	* config/arm/arm.c (thumb1_size_rtx_costs): Add cost for "J" constants.
	* config/arm/arm.md (define_split "J", define_split "K"): Make
	IRA/reload friendly.

From-SVN: r162594
2010-07-27 19:42:15 +00:00
Maxim Kuvyrkov
eae7938e45 gcse.c (insert_insn_end_basic_block): Update signature, remove unused checks.
* gcse.c (insert_insn_end_basic_block): Update signature, remove
	unused checks.
	(pre_edge_insert, hoist_code): Update.

From-SVN: r162593
2010-07-27 19:39:15 +00:00
Maxim Kuvyrkov
c7c910cee2 re PR target/42495 (redundant memory load)
PR target/42495
	PR middle-end/42574
	* gcse.c (hoist_expr_reaches_here_p): Remove excessive check.

From-SVN: r162592
2010-07-27 19:38:10 +00:00
Maxim Kuvyrkov
3d489bc712 * gcse.c (hoist_code): Generate new pseudo for every new set insn.
From-SVN: r162591
2010-07-27 19:36:31 +00:00
Maxim Kuvyrkov
ce4c0015a1 re PR rtl-optimization/40956 (Constants are never candidates for hoisting)
PR rtl-optimization/40956
	PR target/42495
	PR middle-end/42574
	* gcse.c (compute_code_hoist_vbeinout): Consider more expressions
	for hoisting.
	(hoist_code): Count occurences in current block too.

From-SVN: r162590
2010-07-27 19:34:55 +00:00
Maxim Kuvyrkov
2016034718 gcse.c (struct expr:max_distance): New field.
* gcse.c (struct expr:max_distance): New field.
	(doing_code_hoisting_p): New static variable.
	(want_to_gcse_p): Change signature.  Allow constrained hoisting of
	simple expressions, don't change behavior for PRE.  Set max_distance.
	(insert_expr_in_table): Set new max_distance field.
	(hash_scan_set): Update.
	(hoist_expr_reaches_here_p): Stop search after max_distance
	instructions.
	(find_occr_in_bb): New static function.  Use it in ...
	(hoist_code): Calculate sizes of basic block before any changes are
	done.  Pass max_distance to hoist_expr_reaches_here_p.
	(one_code_hoisting_pass): Set doing_code_hoisting_p.

	* params.def (PARAM_GCSE_COST_DISTANCE_RATIO,)
	(PARAM_GCSE_UNRESTRICTED_COST): New parameters.
	* params.h (GCSE_COST_DISTANCE_RATIO, GCSE_UNRESTRICTED_COST): New
	macros.
	* doc/invoke.texi (gcse-cost-distance-ratio, gcse-unrestricted-cost):
	Document.

From-SVN: r162589
2010-07-27 19:29:48 +00:00
Jeff Law
9b77478248 gcse.c (compute_transpout, transpout): Remove, move logic to prune_expressions.
* gcse.c (compute_transpout, transpout): Remove, move logic
	to prune_expressions.
	(compute_pre_data): Move pruning of trapping expressions ...
	(prune_expressions): ... here.  New static function.
	(compute_code_hoist_data): Use it.
	(alloc_code_hoist_mem, free_code_hoist_mem, hoist_code): Update.

Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com>

From-SVN: r162588
2010-07-27 19:27:31 +00:00
Xinliang David Li
55791fcdf0 adjusting iv update stmt position to enable inst combining. Regression tested on x86-64/linux
From-SVN: r162587
2010-07-27 19:23:39 +00:00
Maxim Kuvyrkov
62a3f636a2 dbgcnt.def (hoist_insn): New debug counter.
* dbgcnt.def (hoist_insn): New debug counter.
	* gcse.c (hoist_code): Use it.

From-SVN: r162586
2010-07-27 19:12:21 +00:00
Xinliang David Li
e2102efc00 Multiple exit loop handling in ivopts. Regression tested on x86-64/linux
From-SVN: r162585
2010-07-27 18:18:25 +00:00
Uros Bizjak
01d2a0c170 * Fix extra brackets in my previous commit.
From-SVN: r162584
2010-07-27 20:10:34 +02:00
Uros Bizjak
c013221eda gcc-dg.exp (cleanup-coverage-files): Remove options from test name.
* lib/gcc-dg.exp (cleanup-coverage-files): Remove options from
	test name.
	(cleanup-repo-files): Ditto.
	(cleanup-saved-temps): Ditto.

From-SVN: r162583
2010-07-27 19:55:00 +02:00
Jakub Jelinek
f3184b4ce1 re PR target/44542 (expand_one_stack_var_at may set DECL_ALIGN to a too high value)
PR target/44542
	* cfgexpand.c (expand_one_stack_var_at): Limit align to maximum
	of max_used_stack_slot_alignment and PREFERRED_STACK_BOUNDARY
	instead of MAX_SUPPORTED_STACK_ALIGNMENT.
	(expand_one_var): Don't consider DECL_ALIGN for variables for
	which expand_one_stack_var_at has been already called.

From-SVN: r162582
2010-07-27 19:54:32 +02:00
Jakub Jelinek
fea31288e6 re PR testsuite/44701 (PR44492 fix broke gcc.target/powerpc/asm-es-2.c)
PR testsuite/44701
	* doc/md.texi: Clarify m and es constraints on PowerPC and m and S
	constraints on IA-64.

	* gcc.target/powerpc/asm-es-2.c (f2): Add <> constraints.

From-SVN: r162581
2010-07-27 19:52:35 +02:00
Paolo Carlini
9b04fa9118 acinclude.m4 ([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS]): Fix messages.
2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* acinclude.m4 ([GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS]): Fix
	messages.
	* configure: Regenerate.

From-SVN: r162580
2010-07-27 17:41:47 +00:00
Jie Zhang
65e2958885 re PR target/44290 (__naked attribute is broken)
PR target/44290
	Revert
	2010-07-23  Jie Zhang  <jie@codesourcery.com>
	* tree-sra.c (ipa_sra_preliminary_function_checks): Return
	false if ! tree_versionable_function_p.

From-SVN: r162579
2010-07-27 17:33:30 +00:00
Paolo Carlini
f67a9881a8 [multiple changes]
2010-07-27  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/vstring_util.h: Include bits/range_access.h.
	* testsuite/ext/vstring/range_access.cc: New test.

2010-07-27  Ed Smith-Rowland  <3dw4rd@verizon.net>

	* include/bits/range_access.h: New.
	* include/Makefile.in: Add bits/range_access.h.
	* include/Makefile.am: Regenerate.
	* include/std/array: Include bits/range_access.h.
	* include/std/deque: Ditto.
	* include/std/forward_list: Ditto.
	* include/std/iterator: Ditto.
	* include/std/list: Ditto.
	* include/std/map: Ditto.
	* include/std/regex: Ditto.
	* include/std/set: Ditto.
	* include/std/string: Ditto.
	* include/std/unordered_map: Ditto.
	* include/std/unordered_set: Ditto.
	* include/std/vector: Ditto.
	* include/std/valarray: Add begin() and end().
	* libsupc++/initializer_list: Ditto.
	* include/tr1_impl/utility: Add begin() and end().
	* include/std/tuple: Ditto.
	* testsuite/24_iterators/headers/iterator/range_access.cc: New test.
	* testsuite/24_iterators/range_access.cc: Ditto.
	* testsuite/28_regex/range_access.cc: Ditto.
	* testsuite/18_support/initializer_list/range_access.cc: Ditto.
	* testsuite/21_strings/basic_string/range_access.cc: Ditto.
	* testsuite/26_numerics/valarray/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_map/range_access.cc: Ditto.
	* testsuite/23_containers/multimap/range_access.cc: Ditto.
	* testsuite/23_containers/set/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_multimap/range_access.cc: Ditto.
	* testsuite/23_containers/forward_list/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_set/range_access.cc: Ditto.
	* testsuite/23_containers/vector/range_access.cc: Ditto.
	* testsuite/23_containers/deque/range_access.cc: Ditto.
	* testsuite/23_containers/multiset/range_access.cc: Ditto.
	* testsuite/23_containers/list/range_access.cc: Ditto.
	* testsuite/23_containers/unordered_multiset/range_access.cc: Ditto.
	* testsuite/23_containers/map/range_access.cc: Ditto.
	* testsuite/23_containers/array/range_access.cc: Ditto.
	* testsuite/20_util/tuple/range_access.cc: Ditto.
	* testsuite/20_util/pair/range_access.cc: Ditto.

From-SVN: r162578
2010-07-27 17:27:06 +00:00
Jakub Jelinek
9f39bd5316 dwarf2out.c (add_data_member_location_attribute): Use add_AT_unsigned instead of add_AT_int if offset is non-negative.
* dwarf2out.c (add_data_member_location_attribute): Use
	add_AT_unsigned instead of add_AT_int if offset is non-negative.

From-SVN: r162576
2010-07-27 17:47:43 +02:00
Jakub Jelinek
f551f80cd1 re PR c/45079 (function names in error message (�c_maybe_const_expr� not supported by 'pp_c_expression'))
PR c/45079
	* c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.

	* gcc.dg/pr45079.c: New test.

From-SVN: r162575
2010-07-27 17:46:25 +02:00
Bernd Schmidt
a78e242c07 postreload.c (try_replace_in_use): New static function.
* postreload.c (try_replace_in_use): New static function.
	(reload_combine_recognize_const_pattern): Use it here.  Allow
	substituting into a final add insn, and substituting into a memory
	reference in an insn that sets the reg.

From-SVN: r162573
2010-07-27 15:20:14 +00:00