Commit Graph

100940 Commits

Author SHA1 Message Date
Arnaud Charlet
a50d578551 [multiple changes]
2010-06-14  Robert Dewar  <dewar@adacore.com>

	* gnatcmd.adb, sem_util.adb, exp_ch3.adb: Minor reformatting

2010-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Save_References): If an identifier has been rewritten
	during analysis as an explicit dereference, keep the reference implicit
	in the generic, but preserve the entity if global. This prevents
	malformed generic trees in the presence of some nested generics.

2010-06-14  Sergey Rybin  <rybin@adacore.com>

	* gnat_ugn.texi: For the GNAT driver, clarify the effect of calling the
	tool with '-files=' option. Also fix some small errors (wrong brackets)

From-SVN: r160716
2010-06-14 11:26:32 +02:00
Vincent Celier
5d993afdcb gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all the ALI files on the...
2010-06-14  Vincent Celier  <celier@adacore.com>

	* gnatbind.adb: Call Scan_ALI with Directly_Scanned set to True for all
	the ALI files on the command line.

	* ali.adb (Scan_ALI): Set component Directly_Scanned of the unit(s) to
	the same value as the parameter of the same name.
	* ali.ads (Scan_ALI): New Boolean parameter Directly_Scanned, defaulted
	to False.
	* bindgen.adb (Gen_Versions_Ada): Never emit version symbols for
	Stand-Alone Library interfaces. When binding Stand-Alone Libraries,
	emit version symbols only for the units of the library.
	(Gen_Versions_C): Ditto.

From-SVN: r160715
2010-06-14 11:22:35 +02:00
Arnaud Charlet
49d140bba4 [multiple changes]
2010-06-14  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch4.adb: Fix typo.

2010-06-14  Vasiliy Fofanov  <fofanov@adacore.com>

	* s-oscons-tmplt.c (IOV_MAX): redefine on Tru64 and VMS since the
	vector IO doesn't work at default value properly.

2010-06-14  Doug Rupp  <rupp@adacore.com>

	* s-stoele.adb: Remove unnecessary qualification of To_Address for VMS.

2010-06-14  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb (Check_Files): Do not invoke the tool with all the
	sources of the project if a switch -files= is used.

2010-06-14  Thomas Quinot  <quinot@adacore.com>

	* exp_attr.adb: Minor reformatting

From-SVN: r160714
2010-06-14 11:17:14 +02:00
Arnaud Charlet
7415029d47 [multiple changes]
2010-06-14  Gary Dismukes  <dismukes@adacore.com>

	* gnat_ugn.texi: Minor typo fixes and wording changes

2010-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Analyze_One_Call): If the call has been rewritten from a
	prefixed form, do not re-analyze first actual, which may need an
	implicit dereference.
	* sem_ch6.adb (Analyze_Procedure_Call): If the call is given in
	prefixed notation, the analysis will rewrite the node, and possible
	errors appear in the rewritten name of the node.
	* sem_res.adb: If a call is ambiguous because its first parameter is
	an overloaded call, report list of candidates, to clarify ambiguity of
	enclosing call.

2010-06-14  Doug Rupp  <rupp@adacore.com>

	* s-auxdec-vms-alpha.adb: New package body implementing legacy
	VAX instructions with Asm insertions.
	* s-auxdec-vms_64.ads: Inline VAX queue functions
	* s-stoele.adb: Resolve some ambiguities in To_Addresss with s-suxdec
	that show up only on VMS.
	* gcc-interface/Makefile.in: Provide translation for
	s-auxdec-vms-alpha.adb.

From-SVN: r160713
2010-06-14 11:08:47 +02:00
Olivier Hainque
45c9edf6f2 initialize.c (VxWorks section): Update comments.
2010-06-14  Olivier Hainque  <hainque@adacore.com>

	* initialize.c (VxWorks section): Update comments.

From-SVN: r160712
2010-06-14 10:31:33 +02:00
Arnaud Charlet
e074d476c0 [multiple changes]
2010-06-14  Robert Dewar  <dewar@adacore.com>

	* a-convec.adb, sem_prag.adb, checks.adb: Minor reformatting

2010-06-14  Eric Botcazou  <ebotcazou@adacore.com>

	* init.c: Code clean up.

2010-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): Do
	not insert address clause in table for later validation if type of
	entity is generic, to prevent possible spurious errors. 

	* sem_ch8.adb: Code clean up.

2010-06-14  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Expanded @ovar macro inline to solve problem with
	texi2pdf and texi2html.
	Document how to change scheduling properties on HP-UX.

2010-06-14  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: Remove misleading comments.

From-SVN: r160711
2010-06-14 10:27:05 +02:00
Arnaud Charlet
8255bc9ded [multiple changes]
2010-06-14  Jerome Lambourg  <lambourg@adacore.com>

	* sem_prag.adb (Check_Duplicated_Export_Name): Remove check for
	CLI_Target as this prevents proper detection of exported names
	duplicates when the exported language is different to CIL.
	(Process_Interface_Name): Add check for CIL convention exports,
	replacing the old one from Check_Duplicated_Export_Name.

2010-06-14  Matthew Heaney  <heaney@adacore.com>

	* a-coinve.adb, a-convec.adb (operator "&"): Check both that new length
	and new last satisfy constraints.
	(Delete_Last): prevent overflow for subtraction of index values
	(To_Vector): prevent overflow for addition of index values

From-SVN: r160710
2010-06-14 10:20:41 +02:00
Ed Schonberg
438ff97c27 sem_ch4.adb (Complete_Object_Operation): After analyzing the rewritten call...
2010-06-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch4.adb (Complete_Object_Operation): After analyzing the
	rewritten call, preserve the resulting type to prevent spurious errors,
	when the call is implicitly dereferenced in the context of an in-out
	actual.

	* checks.adb (Apply_Discriminant_Check): If the target of the
	assignment is a renaming of a heap object, create constrained type for
	it to apply check.

From-SVN: r160709
2010-06-14 10:14:10 +02:00
Arnaud Charlet
71158d7e6d [multiple changes]
2010-06-14  Pascal Obry  <obry@adacore.com>

	* prj-proc.adb: Fix copy of object directory for extending projects.

2010-06-14  Jose Ruiz  <ruiz@adacore.com>

	* init.c (__gnat_alternate_stack): Define this space for PowerPC linux
	(__gnat_install_handler, PowerPC linux): Activate the alternative
	signal stack.

From-SVN: r160708
2010-06-14 10:06:34 +02:00
Jakub Jelinek
ce71b410ae s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly adjust z10prop set_attr.
* config/s390/s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly
	adjust z10prop set_attr.

From-SVN: r160707
2010-06-14 09:25:44 +02:00
Eric Botcazou
223c6c5d21 Fix long lines
From-SVN: r160699
2010-06-14 05:43:56 +00:00
GCC Administrator
45c3898c21 Daily bump.
From-SVN: r160694
2010-06-14 00:16:56 +00:00
Gerald Pfeifer
1e913734b4 libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
* libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
	Update copyright years.
	Move to GFDL 1.3.

From-SVN: r160690
2010-06-13 23:14:45 +00:00
H.J. Lu
c2adf11dd3 Add "c-family/" to c-common.h, c-pretty-print.h and c-pragma.h.
2010-06-13  H.J. Lu  <hongjiu.lu@intel.com>

	* g++.dg/plugin/header_plugin.c: Add "c-family/" to c-common.h
	and c-pretty-print.h.

	* g++.dg/plugin/pragma_plugin.c: Add "c-family/" to c-pragma.h.

From-SVN: r160687
2010-06-13 12:55:43 -07:00
Daniel Franke
d8ddea4044 re PR fortran/31588 (gfortran should be able to output Makefile dependencies with -M* options)
2010-06-13  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/31588
	PR fortran/43954
	* gfortranspec.c (lang_specific_driver): Removed deprecation
	warning for -M.
	* lang.opt: Add options -M, -MM, -MD, -MMD, -MF, -MG, -MP, -MT, -MQ.
	* lang-specs.h (CPP_FORWARD_OPTIONS): Add -M* options.
	* cpp.h (gfc_cpp_makedep): New.
	(gfc_cpp_add_dep): New.
	(gfc_cpp_add_target): New.
	* cpp.c (gfc_cpp_option): Add deps* members.
	(gfc_cpp_makedep): New.
	(gfc_cpp_add_dep): New.
	(gfc_cpp_add_target): New.
	(gfc_cpp_init_options): Initialize new options.
	(gfc_cpp_handle_option): Handle new options.
	(gfc_cpp_post_options): Map new options to libcpp-options.
	(gfc_cpp_init): Handle deferred -MQ and -MT options.
	(gfc_cpp_done): If requested, write dependencies to file.
	* module.c (gfc_dump_module): Add a module filename as target.
	* scanner.c (open_included_file): New parameter system; add the
	included file as dependency.
	(gfc_open_included_file): Add the included file as dependency.
	(gfc_open_intrinsic_module): Likewise.
	* invoke.texi: Removed deprecation warning for -M.
	* gfortran.texi: Removed Makefile-dependencies project.

From-SVN: r160684
2010-06-13 12:05:01 -04:00
Paolo Carlini
2d9ca17ba9 base.h (min, max): Mark inline.
2010-06-13  Paolo Carlini <paolo.carlini@oracle.com>

	* include/parallel/base.h (min, max): Mark inline.
	* include/parallel/set_operations.h (__parallel_set_operation):
	Uglify the Operation template parameter.

From-SVN: r160683
2010-06-13 15:44:51 +00:00
Jan Hubicka
7a40b8b121 bitmap.c (bitmap_and, [...]): Turn internal datastructure checks into checking asserts.
* bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
	bitmap_and_compl_into, bitmap_compl_and_into, bitmap_ior,
	bitmap_ior_into, bitmap_xor, bitmap_xor_into,
	bitmap_ior_and_compl, bitmap_ior_and_compl): Turn internal datastructure
	checks into checking asserts.
	* rtlanal.c (find_reg_note): Use gcc_checking_assert.
	* tree-ssa-sccvn.c (VN_INFO): Likewise.
	* df-scan.c (df_reorganize_refs_by_reg_by_reg, df_install_ref,
	df_ref_create_structure): Likewise.
	* alloc-pool.c (create_alloc_pool, empty_alloc_pool, pool_alloc,
	pool_free): Use gcc_checking_assert.
	* alias.c (get_alias_set): Likewise.
	* var-tracking.c (variable_htab_free, shared_hash_copy,
	canonicalize_values_mark, variable_merge_over_cur): Likewise.
	* lto-streamer.c (bp_unpack_value): Likewise.

From-SVN: r160681
2010-06-13 14:50:26 +00:00
Gerald Pfeifer
0f398cb488 gnat_rm.texi: Move to GFDL version 1.3.
* gnat_rm.texi: Move to GFDL version 1.3.
	* gnat-style.texi: Ditto.
	* gnat_ugn.texi: Ditto.

From-SVN: r160680
2010-06-13 14:36:24 +00:00
Richard Guenther
4a2ac96fb7 lto-streamer-in.c (lto_input_ts_type_tree_pointers): Do not stream but initialize TYPE_CANONICAL to NULL.
2010-06-13  Richard Guenther  <rguenther@suse.de>

	* lto-streamer-in.c (lto_input_ts_type_tree_pointers):
	Do not stream but initialize TYPE_CANONICAL to NULL.
	(lto_output_ts_type_tree_pointers): Do not stream TYPE_CANONICAL.
	* gimple.c (gimple_types_compatible_p): Disregard
	TYPE_STRUCTURAL_EQUALITY_P.
	(gimple_register_type): Use TYPE_CANONICAL as cache.
	* lto-streamer.c (lto_record_common_node): Zero TYPE_CANONICAL
	before registering common types.
	* config/i386/i386.c (ix86_function_arg_boundary): Do not
	use TYPE_CANONICAL, instead use TYPE_MAIN_VARIANT.
	* tree.h (TYPE_CANONICAL): Clarify documentation.

	lto/
	* lto.c (lto_fixup_type): Do not register or fixup TYPE_CANONICAL.

From-SVN: r160679
2010-06-13 14:14:17 +00:00
Anatoly Sokolov
ba90d83825 ia64.h (FUNCTION_VALUE_REGNO_P, [...]): Remove macros.
* config/ia64/ia64.h (FUNCTION_VALUE_REGNO_P, FUNCTION_VALUE,
	LIBCALL_VALUE): Remove macros.
	* config/ia64/ia64-protos.h (ia64_function_value): Remove.
	* config/ia64/ia64.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
	TARGET_FUNCTION_VALUE_REGNO_P): Define.
	(ia64_libcall_value, ia64_function_value_regno_p): New functions.
	(ia64_function_value): Make static. Handle receiving the function
	type in 'fn_decl_or_type' argunent. Add 'outgoing' argument.

From-SVN: r160678
2010-06-13 15:04:19 +04:00
Daniel Franke
9050c834d6 whole_file_18.f90: Updated error message.
2010-06-13  Daniel Franke  <franke.daniel@gmail.com>

        * gfortran.dg/whole_file_18.f90: Updated error message.

From-SVN: r160676
2010-06-13 06:04:27 -04:00
Shujing Zhao
9d9f52d38b typeck.c (convert_for_assignment): Fix comment.
2010-06-13  Shujing Zhao  <pearly.zhao@oracle.com>

        * typeck.c (convert_for_assignment): Fix comment. Change message
        format from %d to %qP.
        (convert_for_initialization): Fix comment.

From-SVN: r160671
2010-06-13 03:06:39 +00:00
Jan Hubicka
9fcb01de26 cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p at correct place.
* cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p
	at correct place.

From-SVN: r160669
2010-06-13 01:08:01 +00:00
GCC Administrator
3be09157c9 Daily bump.
From-SVN: r160668
2010-06-13 00:17:13 +00:00
Bernd Schmidt
f63a672677 arm.c (thumb2_reorg): Fix errors in previous change.
* config/arm/arm.c (thumb2_reorg): Fix errors in previous change.

From-SVN: r160664
2010-06-12 23:25:37 +00:00
Daniel Franke
1b1a66265b resolve.c (resolve_global_procedure): Improved checking if an explicit interface is required.
gcc/fortran/:
2010-06-12  Daniel Franke  <franke.daniel@gmail.com>

        * resolve.c (resolve_global_procedure): Improved checking if an
        explicit interface is required.

gcc/testsuite/:
2010-06-12  Daniel Franke  <franke.daniel@gmail.com>

        * gfortran.dg/whole_file_20.f03: New.

From-SVN: r160663
2010-06-12 09:43:48 -04:00
Kai Tietz
57e215e4f7 2010-06-12 Kai Tietz
PR ada/43731
        * gcc-interface/Makefile.in: Add rules for multilib x86/x64
        mingw targets.

From-SVN: r160662
2010-06-12 15:19:17 +02:00
Jan Hubicka
acb6411a26 Fix typo.
From-SVN: r160661
2010-06-12 12:46:46 +00:00
Jan Hubicka
e285df089b df-core.c (df_clear_bb_info): New function.
* df-core.c (df_clear_bb_info): New function.
	(df_set_blocks): bb_info is always allocated.
	(df_get_bb_info): Use block_info_elt_size.
	(df_set_bb_info): Likewise.
	(df_compact_blocks): Update for new block_info.
	(grow_bb_info): New function.
	* df-problems.c (df_grow_bb_info): Move to df-core.c
	(df_rd_set_bb_info): Remove.
	(df_rd_free_bb_info): Do not free block pool.
	(df_rd_alloc): Do not create pool, use check for
	obstack presence instead of NULL pointer for new blocks.
	(df_rd_free): DO not free alloc pool; clear block_info.
	(problem_RD): Add size of block info structure.
	(df_lr_set_bb_info): Remove.
	(df_lr_free_bb_info): Do not free block pool.
	(df_lr_alloc): Do not create pool, use check for
	obstack presence instead of NULL pointer for new blocks.
	(df_lr_free): DO not free alloc pool; clear block_info.
	(problem_LR): Add size of block info structure.
	(df_live_set_bb_info): Remove.
	(df_live_free_bb_info): Do not free block pool.
	(df_live_alloc): Do not create pool, use check for
	obstack presence instead of NULL pointer for new blocks.
	(df_live_free): DO not free alloc pool; clear block_info.
	(problem_LIVE): Add size of block info structure.
	(problem_CHAIN): Add size of block info structure.
	(df_byte_lr_set_bb_info): Remove.
	(df_byte_lr_free_bb_info): Do not free block pool.
	(df_byte_lr_alloc): Do not create pool, use check for
	obstack presence instead of NULL pointer for new blocks.
	(df_byte_lr_free): DO not free alloc pool; clear block_info.
	(problem_BYTE_LR): Add size of block info structure.
	(problem_NOTE): Add size of block info structure.
	(df_byte_MD_set_bb_info): Remove.
	(df_byte_MD_free_bb_info): Do not free block pool.
	(df_byte_MD_alloc): Do not create pool, use check for
	obstack presence instead of NULL pointer for new blocks.
	(df_byte_MD_free): DO not free alloc pool; clear block_info.
	(problem_BD): Add size of block info structure.
	* df-scan.c (df_scan_free_internal): Free block pool.
	(df_scan_set_bb_info): Remove.
	(df_scan_free_bb_info): Check for artificial_defs instead
	of bb_info being non-NULL.
	(df_scan_alloc): DO not create df_scan_block pool.
	(problem_SCAN): Set size of block info.
	(df_bb_refs_record): Do not allocate bb_info.
	* df.h (df_problem): Add block_info_elt_size.
	(struct dataflow): Change block_info to void *.
	(df_scan_get_bb_info, df_rd_get_bb_info, df_lr_get_bb_info,
	df_md_get_bb_info, df_live_get_bb_info, df_byte_lr_get_bb_info): Return
	in-line structures.

From-SVN: r160660
2010-06-12 12:45:26 +00:00
Jan Hubicka
02d635a2f8 re PR tree-optimization/44485 (ICE in get_expr_operands, at tree-ssa-operands.c:1020)
PR tree-optimize/44485
	* tree-cfgcleanup.c (fixup_noreturn_call): Remove basic blocks containing
	use of return value of noreturn function.
	* gcc.c-torture/compile/pc44485.c: New testcase.

From-SVN: r160659
2010-06-12 12:43:02 +00:00
Anatoly Sokolov
153a30276e targhooks.c (default_function_value): Don't use FUNCTION_OUTGOING_VALUE.
* targhooks.c (default_function_value): Don't use
	FUNCTION_OUTGOING_VALUE.
	* system.h (FUNCTION_OUTGOING_VALUE): Poison.
	* doc/tm.texi (FUNCTION_OUTGOING_VALUE): Removed.

From-SVN: r160656
2010-06-12 12:17:18 +04:00
Kazu Hirata
48b09a925e config.gcc (mips64*-*-linux*, [...]): Add crtfastmath.o to extra_parts.
gcc/
	* config.gcc (mips64*-*-linux*, mipsisa64*-*-linux*,
	mips*-*-linux*): Add crtfastmath.o to extra_parts.
	* config/mips/crtfastmath.c: New.
	* config/mips/linux.h (ENDFILE_SPEC): New.

libgcc/
	* config.host (mips64*-*-linux*, mips*-*-linux*): Add mips/t-crtfm
	to tmake_file.  Add crtfastmath.o to extra_parts.
	* config/mips/t-crtfm: New.

From-SVN: r160655
2010-06-12 07:44:51 +00:00
Sebastian Pop
b53cd1c5cf Don't call pbb_to_depth_to_oldiv from compute_type_for_level.
2010-06-12  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass
	old_type in parameter.
	(gcc_type_for_value): Update call to gcc_type_for_interval.
	(compute_type_for_level_1): Renamed compute_type_for_level.
	Update call to gcc_type_for_interval.

From-SVN: r160649
2010-06-12 07:39:25 +00:00
Francois-Xavier Coudert
6cd8d93a0b trans-decl.c (gfc_build_intrinsic_function_decls): Fix return type.
* trans-decl.c (gfc_build_intrinsic_function_decls): Fix
	return type.
	* trans-intrinsic.c (gfc_conv_intrinsic_fdate): Fix argument type.
	(gfc_conv_intrinsic_ttynam): Likewise.
	(gfc_conv_intrinsic_trim): Likewise.

From-SVN: r160648
2010-06-12 06:57:22 +00:00
Janus Weil
1be179930b re PR fortran/40117 ([OOP][F2008] Type-bound procedure: allow list after PROCEDURE)
2010-06-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40117
	* decl.c (match_procedure_in_type): Allow procedure lists (F08).


2010-06-12  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40117
	* gfortran.dg/typebound_proc_4.f03: Modified error message.
	* gfortran.dg/typebound_proc_14.f03: New.
	* gfortran.dg/typebound_proc_15.f03: New.

From-SVN: r160646
2010-06-12 06:10:25 +02:00
GCC Administrator
1130db7eee Daily bump.
From-SVN: r160644
2010-06-12 00:18:00 +00:00
Joseph Myers
fcfbd84e94 common.opt (Wstrict-aliasing=, [...]): Add RejectNegative.
* common.opt (Wstrict-aliasing=, Wstrict-overflow=, fabi-version=,
	flto-compression-level=, ftree-parallelize-loops=): Add
	RejectNegative.

testsuite:
	* gcc.dg/opts-1.c: New test.

From-SVN: r160640
2010-06-12 01:13:23 +01:00
Joseph Myers
5d4b393fec opts-common.c: Include options.h.
* opts-common.c: Include options.h.
	(integral_argument): Move from opts.c.
	(decode_cmdline_option): New.  Based on read_cmdline_option.
	* opts.c (integral_argument): Move to opts-common.c.
	(read_cmdline_option): Move most contents to
	decode_cmdline_option.  Use %qs in diagnostics.
	* opts.h (CL_ERR_DISABLED, CL_ERR_MISSING_ARG, CL_ERR_WRONG_LANG,
	CL_ERR_UINT_ARG, struct cl_decoded_option, integral_argument,
	decode_cmdline_option): New.

testsuite:
	* gcc.dg/funroll-loops-all.c: Update expected error.

From-SVN: r160639
2010-06-12 01:12:12 +01:00
Uros Bizjak
b79a08f6c4 re PR target/44481 (__builtin_parity() causes ICE in trunc_int_for_mode())
PR target/44481
	* config/i386/i386.md (UNSPEC_PARITY): New unspec.
	(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
	(partiysi2_cmp): Ditto.
	(*partiyhi2_cmp): Ditto.
	(*parityqi2_cmp): Remove.

testsuite/ChangeLog:

	PR target/44481
	* gcc.target/i386/pr44481.c: New test.

From-SVN: r160638
2010-06-11 23:58:31 +02:00
Jan Hubicka
d5568f03cd bitmap.h (+bmp_iter_next_bit): New.
* bitmap.h (+bmp_iter_next_bit): New.
	(bmp_iter_set, bmp_iter_and, bmp_iter_and_compl):
	Use it.

From-SVN: r160637
2010-06-11 21:56:08 +00:00
Sandra Loosemore
5914a70f0b tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the computed cost.
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
	computed cost.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r160636
2010-06-11 21:53:59 +00:00
Eric Botcazou
ef1f5ea659 Fix date
From-SVN: r160633
2010-06-11 20:52:49 +00:00
Eric Botcazou
ef0cce1d62 re PR rtl-optimization/42461 (missed optimization for pure functions)
PR rtl-optimization/42461
	* gcc.dg/pr42461.c: Compile at -O2 instead of -O.

From-SVN: r160632
2010-06-11 20:50:46 +00:00
Manuel López-Ibáñez
6312e84d63 c-common.c (conversion_warning): Warn at expression location.
2010-06-11  Manuel López-Ibáñez  <manu@gcc.gnu.org>

c-family/
        * c-common.c (conversion_warning): Warn at expression
	location.

From-SVN: r160631
2010-06-11 19:56:18 +00:00
Alexandre Oliva
d4d1606b28 * gcc-interface/utils.c (update_pointer_to): Initialize last.
From-SVN: r160630
2010-06-11 19:41:28 +00:00
Francois-Xavier Coudert
1826e883bc * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Fix comment.
From-SVN: r160629
2010-06-11 19:36:40 +00:00
Francois-Xavier Coudert
2921157dbf mathbuiltins.def: Add builtins that do not directly correspond to a Fortran intrinsic...
* mathbuiltins.def: Add builtins that do not directly correspond
	to a Fortran intrinsic, with new macro OTHER_BUILTIN.
	* f95-lang.c (gfc_init_builtin_functions): Define OTHER_BUILTIN.
	* trans-intrinsic.c (gfc_intrinsic_map_t): Remove
	code_{r,c}{4,8,10,16} fields. Add
	{,complex}{float,double,long_double}_built_in fields.
	(gfc_intrinsic_map): Adjust definitions of DEFINE_MATH_BUILTIN,
	DEFINE_MATH_BUILTIN_C and LIB_FUNCTION accordingly. Add
	definition of OTHER_BUILTIN.
	(real_compnt_info): Remove unused struct.
	(builtin_decl_for_precision, builtin_decl_for_float_kind): New
	functions.
	(build_round_expr): Call builtin_decl_for_precision instead of
	series of if-else.
	(gfc_conv_intrinsic_aint): Call builtin_decl_for_float_kind
	instead of a switch.
	(gfc_build_intrinsic_lib_fndecls): Match
	{real,complex}{4,8,10,16}decl into the C-style built_in_decls.
	(gfc_get_intrinsic_lib_fndecl): Do not hardcode floating-point
	kinds.
	(gfc_conv_intrinsic_lib_function): Go through all the extended
	gfc_intrinsic_map.
	(gfc_trans_same_strlen_check): Call builtin_decl_for_float_kind
	instead of a switch.
	(gfc_conv_intrinsic_abs): Likewise.
	(gfc_conv_intrinsic_mod): Likewise.
	(gfc_conv_intrinsic_sign): Likewise.
	(gfc_conv_intrinsic_fraction): Likewise.
	(gfc_conv_intrinsic_nearest): Likewise.
	(gfc_conv_intrinsic_spacing): Likewise.
	(gfc_conv_intrinsic_rrspacing): Likewise.
	(gfc_conv_intrinsic_scale): Likewise.
	(gfc_conv_intrinsic_set_exponent): Likewise.

From-SVN: r160628
2010-06-11 19:35:19 +00:00
Uros Bizjak
ed9955f928 i386.md (unspec): New define_c_enum.
* config/i386/i386.md (unspec): New define_c_enum.
	(unspecv): Ditto.

From-SVN: r160627
2010-06-11 21:01:47 +02:00
Jakub Jelinek
8e680db5b6 cpplib.h (struct cpp_callbacks): Add user_builtin_macro callback.
* include/cpplib.h (struct cpp_callbacks): Add user_builtin_macro
	callback.
	(enum cpp_builtin_type): Add BT_FIRST_USER and BT_LAST_USER.
	(cpp_macro_definition): Remove const qual from second argument.
	* macro.c (enter_macro_context): Call user_builtin_macro callback for
	NODE_BUILTIN !NODE_USED macros.
	(warn_of_redefinition): Likewise.  Remove const qual from second
	argument.
	(cpp_macro_definition): Likewise.
	* pch.c (write_macdef, save_macros): Call user_builtin_macro callback
	for NODE_BUILTIN !NODE_USED macros.

	* c-family/c-cppbuiltin.c: Include cpp-id-data.h.
	(lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
	(lazy_hex_fp_value): New function.
	(builtin_define_with_hex_fp_value): Provide definitions lazily.
	* Makefile.in (c-family/c-cppbuiltin.o): Depend on $(CPP_ID_DATA_H).

From-SVN: r160626
2010-06-11 20:37:34 +02:00
Sebastian Pop
7b14477e38 Fix PR44483: incrementally gimplify BB predicates to avoid redundant computations.
2010-06-11  Sebastian Pop  <sebastian.pop@amd.com>

	PR middle-end/44483
	* tree-if-conv.c (bb_predicate_s): New struct.
	(bb_predicate_p): New.
	(bb_has_predicate): New.
	(bb_predicate): New.
	(set_bb_predicate): New.
	(bb_predicate_gimplified_stmts): New.
	(set_bb_predicate_gimplified_stmts): New.
	(add_bb_predicate_gimplified_stmts): New.
	(init_bb_predicate): New.
	(free_bb_predicate): New.
	(is_predicated): Use bb_predicate.
	(add_to_predicate_list): Use bb_predicate and set_bb_predicate.
	(predicate_bbs): Same.  Gimplify the condition of the basic blocks
	before processing their successors.
	(clean_predicate_lists): Removed.
	(find_phi_replacement_condition): Use bb_predicate.
	(process_phi_nodes): Renamed ifconvert_phi_nodes.  Avoid useless
	computations.
	(insert_gimplified_predicates): New.
	(combine_blocks): Call insert_gimplified_predicates.
	(tree_if_conversion): Call free_bb_predicate instead of
	clean_predicate_lists.

	* gcc.dg/tree-ssa/pr44483.c: New.

From-SVN: r160625
2010-06-11 18:28:17 +00:00