aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2011-11-21[multiple changes]Arnaud Charlet14-116/+157
2011-11-21 Tristan Gingold <gingold@adacore.com> * env.c: Remove unused declaration. 2011-11-21 Pascal Obry <obry@adacore.com> * s-os_lib.ads: Minor style fix. 2011-11-21 Pascal Obry <obry@adacore.com> * adaint.c (__gnat_dup2): When fd are stdout, stdin or stderr and identical, do nothing on Windows XP. 2011-11-21 Yannick Moy <moy@adacore.com> * sem_ch3.adb (Constrain_Index, Process_Range_Expr_In_Decl): Use Full_Expander_Active instead of Expander_Active to control the forced evaluation of expressions for the sake of generating checks. 2011-11-21 Thomas Quinot <quinot@adacore.com> * init.c: On FreeBSD, stack checking failures may raise SIGBUS. 2011-11-21 Tristan Gingold <gingold@adacore.com> * sysdep.c (mode_read_text, mode_write_text, mode_append_text, mode_read_binary, mode_write_binary, mode_append_binary, mode_read_text_plus, mode_write_text_plus, mode_append_text_plus, mode_read_binary_plus, mode_write_binary_plus, mode_append_binary_plus): Remove unused declarations. 2011-11-21 Yannick Moy <moy@adacore.com> * gnat_rm.texi: Minor rewording. 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> * exp_imgv.adb (Expand_Width_Attribute): Emit an error message rather than a warning when pragma Discard_Names prevents the computation of 'Width. Do not emit an error through the use of RE_Null. 2011-11-21 Javier Miranda <miranda@adacore.com> * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Add implicit type conversion when the type of the allocator is an interface. Done to force generation of displacement of the "this" pointer when required. 2011-11-21 Ed Schonberg <schonberg@adacore.com> * sinfo.ads, sinfo.adb: Corresponding_Spec applies to expression functions, and is set when the expression is a completion of a previous declaration. * sem_ch6.adb (Analyze_Expression_Function): To determine properly whether an expression function completes a previous declaration, use Find_Corresponding_Spec, as when analyzing a subprogram body. 2011-11-21 Steve Baird <baird@adacore.com> * sem_util.adb (Deepest_Type_Access_Level): Improve comment. (Type_Access_Level): Improve comment. From-SVN: r181575
2011-11-21Makefile.in (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) by means of -iquote ↵Eric Botcazou2-9/+8
unconditionally. * gcc-interface/Makefile.in (INCLUDES_FOR_SUBDIR): Add $(fsrcdir) by means of -iquote unconditionally. From-SVN: r181573
2011-11-21[multiple changes]Arnaud Charlet6-21/+47
2011-11-21 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_util.adb, sem_res.adb, sem_attr.adb: Minor reformatting. 2011-11-21 Arnaud Charlet <charlet@adacore.com> * s-taprop-posix.adb (Create_Task): Use Unrestricted_Access to deal with fact that we properly detect the error if Access is used. From-SVN: r181572
2011-11-21sem_util.ads: Update comment describing function Deepest_Access_Level.Steve Baird6-9/+41
2011-11-21 Steve Baird <baird@adacore.com> * sem_util.ads: Update comment describing function Deepest_Access_Level. * sem_util.adb (Deepest_Type_Access_Level): Return Int'Last for a generic formal type. (Type_Access_Level): Return library level for a generic formal type. * sem_attr.adb (Resolve_Attribute): Replace two Type_Access_Level calls with calls to Deepest_Type_Access_Level. * sem_ch3.adb (Analyze_Component_Declaration): replace a Type_Access_Level call with a call to Deepest_Type_Access_Level. * sem_res.adb (Resolve_Allocator.Check_Allocator_Discrim_Accessibility): Replace three Type_Access_Level calls with calls to Deepest_Type_Access_Level. (Resolve_Allocator): Replace a Type_Access_Level call with a call to Deepest_Type_Access_Level. (Valid_Conversion.Valid_Array_Conversion): Replace a Type_Access_Level call with a call to Deepest_Type_Access_Level. From-SVN: r181570
2011-11-21sem_ch3.adb, [...]: Minor reformatting.Robert Dewar4-4/+17
2011-11-21 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, s-taprop-vms.adb, opt.ads: Minor reformatting. From-SVN: r181569
2011-11-21[multiple changes]Arnaud Charlet15-59/+337
2011-11-21 Robert Dewar <dewar@adacore.com> * sinput.ads: Minor comment fix. 2011-11-21 Robert Dewar <dewar@adacore.com> * exp_attr.adb (Expand_N_Attribute_Reference, case First_Bit, Last_Bit, Position): Handle 2005 case. 2011-11-21 Robert Dewar <dewar@adacore.com> * s-atocou-builtin.adb (Decrement): Use Unrestricted_Access to deal with fact that we properly detect the error if Access is used. (Increment): Same fix. * s-taprop-linux.adb (Create_Task): Use Unrestricted_Access to deal with fact that we properly detect the error if Access is used. * sem_util.adb (Is_Volatile_Object): Properly record that A.B is volatile if the B component is volatile. This affects the check for passing such a by reference volatile actual to a non-volatile formal (which should be illegal) 2011-11-21 Robert Dewar <dewar@adacore.com> * freeze.adb (Freeze_Enumeration_Type): Make sure to set both size and alignment for foreign convention enumeration types. * layout.adb (Set_Elem_Alignment): Redo setting of alignment when size is set. 2011-11-21 Yannick Moy <moy@adacore.com> * checks.adb (Apply_Access_Check, Apply_Arithmetic_Overflow_Check, Apply_Discriminant_Check, Apply_Divide_Check, Apply_Selected_Length_Checks, Apply_Selected_Range_Checks, Build_Discriminant_Checks, Insert_Range_Checks, Selected_Length_Checks, Selected_Range_Checks): Replace reference to Expander_Active with reference to Full_Expander_Active, so that expansion of checks is not performed in Alfa mode 2011-11-21 Tristan Gingold <gingold@adacore.com> * s-taprop-vms.adb (Create_Task): Use Unrestricted_Access to deal with fact that we properly detect the error if Access is used. 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> * par-ch4.adb (P_Quantified_Expression): Add an Ada 2012 check. 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> * exp_imgv.adb: Add with and use clause for Errout. (Expand_Width_Attribute): Emit a warning when in configurable run-time mode to provide a better diagnostic message. 2011-11-21 Hristian Kirtchev <kirtchev@adacore.com> * s-finmas.adb (Finalize): Add comment concerning double finalization. 2011-11-21 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Access_Definition): If the access definition is itself the return type of an access to function definition which is ultimately the return type of an access to subprogram declaration, its scope is the enclosing scope of the ultimate access to subprogram. 2011-11-21 Steve Baird <baird@adacore.com> * sem_res.adb (Valid_Conversion): If a conversion was legal in the body of a generic, then the corresponding conversion is legal in the expanded body of an instance of the generic. From-SVN: r181568
2011-11-21sem_ch3.adb: Minor reformatting.Robert Dewar5-11/+88
2011-11-21 Robert Dewar <dewar@adacore.com> * sem_ch3.adb: Minor reformatting. 2011-11-21 Robert Dewar <dewar@adacore.com> * s-utf_32.adb (Is_UTF_32_Line_Terminator): Recognize NEL as line terminator. * sinput.ads: Add section on Handling of Source Line Terminators. * types.ads (Line_Terminator): Adjust comments. From-SVN: r181567
2011-11-21frontend.adb (Frontend): Capture restrictions from config filesRobert Dewar11-62/+288
2011-11-21 Robert Dewar <dewar@adacore.com> * frontend.adb (Frontend): Capture restrictions from config files * lib-load.adb (Load_Unit): Save/set/restore restriction pragma information * lib-xref.adb (Generate_Reference): Fix handling of obsolescent references. This was noticed during debugging, but it is not known if it causes real bugs. * restrict.ads, restrict.adb: New routines to save/set/restore non-partition-wide restrictions. * s-rident.ads: Comment changes for new handling of No_Elaboration_Code * sem.adb (Sem): Save/Set/Restore non-partition-wide restrictions * sem_ch10.adb (Analyze_Compilation_Unit): Remove incomplete attempt to save/restore non-partition-wide restrictions (now this work is all done in Sem). * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Special handling for restriction No_Elaboration_Code. 2011-11-21 Robert Dewar <dewar@adacore.com> * gnat_ugn.texi: Document new handling of restrictions pragmas. From-SVN: r181566
2011-11-21[multiple changes]Arnaud Charlet4-8/+31
2011-11-21 Pascal Obry <obry@adacore.com> * s-taprop-linux.adb (Initialize_Lock): Do not allocate a cond attribute as not needed. 2011-11-21 Robert Dewar <dewar@adacore.com> * sem_prag.adb: Minor reformatting. 2011-11-21 Pascal Obry <obry@adacore.com> * gnat_rm.texi: Document restriction for stdcall convention on dispatching calls. From-SVN: r181565
2011-11-21sem_prag.adb (Process_Convention): A dispatching call cannot have a stdcall ↵Pascal Obry3-28/+25
calling convention. 2011-11-21 Pascal Obry <obry@adacore.com> * sem_prag.adb (Process_Convention): A dispatching call cannot have a stdcall calling convention. 2011-11-21 Pascal Obry <obry@adacore.com> * s-taprop-linux.adb (Initialize_Lock): Do not allocate a mutex attribute as not needed. (Initialize_TCB): Likewise. (Initialize): Likewise. From-SVN: r181564
2011-11-21sem_ch6.adb (Is_Public_Subprogram_For): New procedureArnaud Charlet18-28/+274
2011-11-21 Robert Dewar <dewar@adacore.com> * sem_ch6.adb (Is_Public_Subprogram_For): New procedure (Process_PPCs): Invariants only apply to public subprograms. 2011-11-21 Robert Dewar <dewar@adacore.com> * sem_util.adb, sem_util.ads, sem_attr.adb, restrict.adb, restrict.ads: Fix for No_Implicit_Aliasing in the renames case. 2011-11-21 Robert Dewar <dewar@adacore.com> * a-finali.ads: Use pragma Pure_12 for this unit * aspects.adb: Add aspect Pure_12 * aspects.ads: Add aspect Pure_12 * opt.ads: Add note on Pure_12 * par-prag.adb: Add dummy entry for Pure_12 * sem_prag.adb: Implement Pure_12 pragma * snames.ads-tmpl: Add Entry for Pure_12 2011-11-21 Sergey Rybin <rybin@adacore.com frybin> * vms_data.ads: Add qualifiers for new gnatpp options '--call_threshold' and '--par_threshold". * gnat_ugn.texi: Add description for new gnatpp options '--call_threshold' and '--par_threshold". 2011-11-21 Robert Dewar <dewar@adacore.com> * lib.ads: Minor reformatting. 2011-11-21 Robert Dewar <dewar@adacore.com> * lib-load.ads: Add comment. From-SVN: r181563
2011-11-21sem_elab.adb: Minor reformattingArnaud Charlet2-1/+21
2011-11-21 Gary Dismukes <dismukes@adacore.com> * sem_elab.adb: Minor reformatting From-SVN: r181562
2011-11-21[multiple changes]Arnaud Charlet3-6/+45
2011-11-21 Robert Dewar <dewar@adacore.com> * exp_ch6.adb: Minor reformatting. 2011-11-21 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Check_Formal_Package_Instance): If a formal subprogram of the formal package is covered by an others association with a box initialization, no check is needed against the actual in the instantiation of the formal package. 2011-11-21 Robert Dewar <dewar@adacore.com> * sem_elab.adb (Check_Internal_Call_Continue): Suppress junk elab warning from within precondition/postcondition etc. From-SVN: r181561
2011-11-21[multiple changes]Arnaud Charlet5-42/+89
2011-11-21 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Expand_Actuals): In Ada 2012, a function call with out parameters may generate assignments to force constraint checks. These checks must be properly placed in the code after the declaration or statement that contains the call. 2011-11-21 Fedor Rybin <frybin@adacore.com> * gnat_ugn.texi: Adding info on current gnattest limitations an support of -X option. 2011-11-21 Robert Dewar <dewar@adacore.com> * a-cfdlli.adb, a-cbdlli.adb: Minor reformatting. From-SVN: r181559
2011-11-21avr.h (struct base_arch_s): Add field sfr_offset.Georg-Johann Lay7-472/+379
* config/avr/avr.h (struct base_arch_s): Add field sfr_offset. * config/avr/avr-devices.c: Ditto. And initialize it. * config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in define __AVR_SFR_OFFSET__. * config/avr/avr-protos.h (out_movqi_r_mr, out_movqi_mr_r): Remove. (out_movhi_r_mr, out_movhi_mr_r): Remove. (out_movsi_r_mr, out_movsi_mr_r): Remove. * config/avr/avr.md (*cbi, *sbi): Use %i instead of %m-0x20. (*insv.io, *insv.not.io): Ditto. * config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r): Make static. (print_operand): Implement "%i" to print address as I/O address. (output_movqi): Clean up call of out_movqi_mr_r. (output_movhi): Clean up call of out_movhi_mr_r. (avr_file_start): Use avr_current_arch->sfr_offset instead of magic -0x20. Use TMP_REGNO, ZERO_REGNO instead of 0, 1. (avr_out_sbxx_branch): Use %i instead of %m-0x20. (out_movqi_r_mr, out_movqi_mr_r): Ditto. And make static. (out_movhi_r_mr, out_movhi_mr_r): Ditto. And use avr_asm_len. (out_shift_with_cnt): Clean up code: Use avr_asm_len. (output_movsisf): Use output_reload_insisf for all CONSTANT_P sources. (avr_out_movpsi): USE avr_out_reload_inpsi for all CONSTANT_P sources. Clean up call of avr_out_store_psi. (output_reload_in_const): Don't cut symbols longer than 2 bytes. (output_reload_insisf): Filter CONST_INT_P or CONST_DOUBLE_P to try if setting pre-cleared register is advantageous. (avr_out_plus_1): Use gen_int_mode instead of GEN_INT. From-SVN: r181552
2011-11-21expr.c (expand_expr_real_1): Correctly handle strict volatile bitfield loads ↵Joey Ye4-3/+40
smaller than mode size. 2011-11-20 Joey Ye <joey.ye@arm.com> * expr.c (expand_expr_real_1): Correctly handle strict volatile bitfield loads smaller than mode size. testsuite: * gcc.dg/volatile-bitfields-1.c: New. From-SVN: r181549
2011-11-20* pt.c (tsubst_pack_expansion): Fix SFINAE.Jason Merrill3-1/+30
From-SVN: r181548
2011-11-20re PR c++/48322 ([C++0x] Plural variadic parameter packs are not expanded well)Jason Merrill10-23/+133
PR c++/48322 gcc/cp/ * cp-tree.h (PACK_EXPANSION_EXTRA_ARGS): New. * cp-tree.def (EXPR_PACK_EXPANSION): Add an operand for it. * pt.c (tsubst_pack_expansion): Set and use it. (iterative_hash_template_arg): Hash it. (template_args_equal): Compare it. (comp_template_args_with_info): Handle nulls. * tree.c (cp_walk_subtrees): Walk it. * typeck.c (structural_comptypes): Compare it. * ptree.c (cxx_print_type): Print it. libstdc++-v3/ * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE. From-SVN: r181547
2011-11-20pt.c (type_unification_real): Set input_location during default arg ↵Jason Merrill5-7/+22
instantiation. * pt.c (type_unification_real): Set input_location during default arg instantiation. From-SVN: r181546
2011-11-21Daily bump.GCC Administrator1-1/+1
From-SVN: r181543
2011-11-20mips: Install the __sync libfuncs for mips16Richard Henderson2-2/+10
* config/mips/mips.c (mips_init_libfuncs): Call init_sync_libfuncs. From-SVN: r181539
2011-11-20re PR c++/51230 (Broken diagnostic: 'template_parm_index' not supported by ↵Paolo Carlini5-1/+24
dump_type) /cp 2011-11-20 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51230 * pt.c (unify_inconsistency): Handle non-type parameters better. * error.c (dump_expr): Handle TEMPLATE_TEMPLATE_PARM. /cp 2011-11-20 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51230 * g++.dg/template/error46.C: New. From-SVN: r181538
2011-11-20re PR target/51235 (ICE: in extract_insn, at recog.c:2137 (unrecognizable ↵Uros Bizjak5-3/+54
insn) with -O -ftree-vectorize -mavx2 -mxop) PR target/51235 * config/i386/i386.c (ix86_expand_vcond): Generate TARGET_XOP patterns for supported mode only. PR target/51236 * config/i386/i386.c (ix86_expand_builtin) <IX86_BUILTIN_GATHERALTSIV4DI>: Use CODE_FOR_avx2_gathersiv4di. testsuite/ChangeLog: PR target/51235 * gcc.target/i386/pr51235.c: New test. PR target/51236 * gcc.target/i386/pr51236.c: New test. From-SVN: r181537
2011-11-20i386.md (UNSPEC_MOVNTI): Remove.Uros Bizjak5-8/+19
* config/i386/i386.md (UNSPEC_MOVNTI): Remove. (UNSPEC_MOVNTQ): New unspec. * config/i386/mmx.md (sse_movntq): Rename from sse_movntdi. Use UNSPEC_MOVNTQ instead of UNSPEC_MOVNT. * config/i386/sse.md (sse2_movnti<mode>): Use UNSPEC_MOVNT instead of UNSPEC_MOVNTI. (STORENT_MODE): Add DI and V4DI modes. From-SVN: r181531
2011-11-20[multiple changes]Arnaud Charlet6-5/+129
2011-11-20 Robert Dewar <dewar@adacore.com> * exp_ch6.adb, exp_util.adb: Minor reformatting 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> * sinfo.ads (Reference): Document that it is OK to set Is_Known_Non_Null on a temporary initialized to a N_Reference node. 2011-11-20 Matthew Heaney <heaney@adacore.com> * a-cbdlli.adb, a-cfdlli.adb (Move): Set Last component to 0 for Source list. From-SVN: r181530
2011-11-20exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Declare NEW_EXPR local ↵Eric Botcazou4-2/+36
variable and attach the temporary to it. 2011-11-20 Eric Botcazou <ebotcazou@adacore.com> * exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Declare NEW_EXPR local variable and attach the temporary to it. Set Is_Known_Non_Null on the temporary. (Make_Build_In_Place_Call_In_Object_Declaration): Likewise. * exp_util.adb (Remove_Side_Effects): Set Is_Known_Non_Null on the temporary created to hold the 'Reference of the expression, if any. * checks.adb (Install_Null_Excluding_Check): Bail out for the Get_Current_Excep.all.all idiom generated by the expander. From-SVN: r181529
2011-11-20trans.c (struct language_function): Add GNAT_RET.Eric Botcazou2-10/+218
* gcc-interface/trans.c (struct language_function): Add GNAT_RET. (f_gnat_ret): New macro. (struct nrv_data): Add GNAT_RET. (finalize_nrv_unc_r): New helper function. (finalize_nrv): Add GNAT_RET parameter. Copy it into DATA. If the function returns unconstrained, use finalize_nrv_unc_r as callback. (return_value_ok_for_nrv_p): Test the alignment of RET_OBJ only if RET_OBJ is non-null. (Subprogram_Body_to_gnu): Pass GNAT_RET to finalize_nrv. (gnat_to_gnu) <N_Return_Statement>: In the return-unconstrained case, if optimization is enabled, record candidates for the Named Return Value optimization. From-SVN: r181528
2011-11-20trans.c (Subprogram_Body_to_gnu): Add comment.Eric Botcazou3-12/+21
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Add comment. (gnat_to_gnu) <N_Return_Statement>: Add 'else' to avoid doing a useless test. Tweak default case. <N_Goto_Statement>: Use better formatting. * gcc-interface/utils2.c (maybe_wrap_malloc): Use INIT_EXPR instead of MODIFY_EXPR to initialize the storage. (build_allocator): Likewise. From-SVN: r181527
2011-11-20decl.c (gnat_to_gnu_entity): Adjust call to components_to_record.Eric Botcazou6-66/+201
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Adjust call to components_to_record. (components_to_record): Add FIRST_FREE_POS parameter. For the variant part, reuse enclosing union even if there is a representation clause on the Unchecked_Union. If there is a variant part, compute the new first free position, if any. Adjust call to self. Use a single field directly only if it hasn't got a representation clause or is placed at offset zero. Create the variant part at offset 0 if all the fields down to this level have a rep clause. Do not chain the variant part immediately and adjust downstream. Do not test ALL_REP before moving the fields without rep clause to the previous level. Call create_rep_part to create the REP part and force a minimum size on it if necessary. Do not chain it immediately. Create a fake REP part if there are fields without rep clause that need to be laid out starting from FIRST_FREE_POS. At the end, chain the REP part and then the variant part. (create_rep_part): New function. (get_rep_part): Minor tweak. * gcc-interface/utils.c (tree_code_for_record_type): Minor tweak. From-SVN: r181526
2011-11-20fixup trunkated changelog entryNathan Sidwell1-1/+2
From-SVN: r181525
2011-11-20re PR gcov-profile/51113 (rev. 181105 causes Firefox profiledbuild failure)Nathan Sidwell10-19/+154
PR gcov-profile/51113 * coverage.c (build_var): Propagate visibility for public decls. testsuite/ * gcc.misc-tests/gcov-13.c: Check gcovpart-13b coverage * gcc.misc-tests/gcov-16.c: New. * gcc.misc-tests/gcov-17.c: New. * g++.dg/gcov/gcov-8.C: New. * g++.dg/gcov/gcov-9.C: New. * g++.dg/gcov/gcov-10.C: New. From-SVN: r181524
2011-11-20PR c++/51194 - ICE with invalid alias templateDodji Seketeli4-0/+34
gcc/cp/ PR c++/51194 * pt.c (lookup_template_class_1): Go out early if the type of the template is error_mark_node. gcc/testsuite/ PR c++/51194 * g++.dg/cpp0x/alias-decl-15.C: New test. From-SVN: r181523
2011-11-20Daily bump.GCC Administrator1-1/+1
From-SVN: r181521
2011-11-19re PR c++/51216 (ICE with statement expression)Paolo Carlini4-0/+25
/cp 2011-11-19 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51216 * semantics.c (potential_constant_expression_1): Handle IF_STMT, DO_STMT, FOR_STMT, and WHILE_STMT. /testsuite 2011-11-19 Paolo Carlini <paolo.carlini@oracle.com> PR c++/51216 * g++.dg/cpp0x/pr51216.C: New. From-SVN: r181517
2011-11-19re PR rtl-optimization/51187 (miscompilation of genrecog.c at -O2 for ↵Eric Botcazou4-1/+129
--target=avr) PR rtl-optimization/51187 * reorg.c (relax_delay_slots): Do not consider a jump useless if there is a barrier between the jump and its target label. From-SVN: r181513
2011-11-19re PR middle-end/51211 (ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2242) ↵Patrick Marlier2-0/+14
with -fgnu-tm -O -freorder-blocks -ftracer --param hot-bb-frequency-fraction=1 and __transaction_atomic) PR middle-end/51211 * tracer.c (ignore_bb_p): Don't copy GIMPLE_TRANSACTION. From-SVN: r181512
2011-11-19* expmed.c (store_bit_field_1): Revert bogus formatting change.Eric Botcazou2-4/+7
From-SVN: r181511
2011-11-19Fix minor issuesEric Botcazou1-9/+7
From-SVN: r181509
2011-11-19re PR target/50493 (ICE in neon_disambiguate_copy, at config/arm/arm.c:20388)Richard Earnshaw2-25/+26
PR target/50493 * arm.c (neon_disambiguate_copy): Correctly handle partial overlap of src and dest operands. From-SVN: r181508
2011-11-19darwin.h (ASM_DEBUG_SPEC): New.Iain Sandoe3-0/+16
gcc: * config/darwin.h (ASM_DEBUG_SPEC): New. * config/darwin9.h (ASM_DEBUG_SPEC): New. From-SVN: r181507
2011-11-19re PR fortran/51207 ([OOP] Mark __def_init_... as FL_PARAMETER)Tobias Burnus4-3/+27
2011-11-19 Tobias Burnus <burnus@net-b.de> PR fortran/51207 * class.c (gfc_find_derived_vtab): Mark __def_init as PARAMETER and hence as TREE_READONLY; add subroutine attribute to __copy_ procedure. PR fortran/50640 * trans.h (GFC_DECL_PUSH_TOPLEVEL): New DECL_LANG_FLAG_7. * trans-decl.c (gfc_get_symbol_decl): Mark __def_init and vtab as GFC_DECL_PUSH_TOPLEVEL. (gfc_generate_function_code): If GFC_DECL_PUSH_TOPLEVEL, push it there. (build_function_decl): Push __copy_ procedure to the toplevel. From-SVN: r181505
2011-11-19i386.c (atom_cost): Disable SSE loop until alignment issues are fixed.Jan Hubicka2-8/+13
* config/i386/i386.c (atom_cost): Disable SSE loop until alignment issues are fixed. From-SVN: r181503
2011-11-19Daily bump.GCC Administrator1-1/+1
From-SVN: r181501
2011-11-18* gcc.dg/cpp/assert4.c: Test __linux__, not __gnu_linux__.Joseph Myers2-2/+6
From-SVN: r181496
2011-11-19cris.c (cris_function_value_regno_p): Make static.Anatoly Sokolov4-9/+11
* config/cris/cris.c (cris_function_value_regno_p): Make static. (TARGET_FUNCTION_VALUE_REGNO_P): Define. * config/cris/cris.h (FUNCTION_VALUE_REGNO_P): Remove. * config/cris/cris-protos.h (cris_function_value_regno_p): Remove. From-SVN: r181493
2011-11-18re PR c++/51188 (invalid static_cast from type 'XBase' to type 'int')Fabien Chêne2-2/+2
gcc/testsuite/ChangeLog 2011-11-18 Fabien Chene <fabien@gcc.gnu.org> PR c++/51188 * g++.dg/lookup/using46.C: New. * g++.dg/lookup/using47.C: New. * g++.dg/lookup/using48.C: New. * g++.dg/lookup/using49.C: New. * g++.dg/lookup/using50.C: New. gcc/cp/ChangeLog 2011-11-18 Fabien Chene <fabien@gcc.gnu.org> PR c++/51188 * search.c (lookup_field_1): Handle USING_DECLs for the storted case. From-SVN: r181492
2011-11-18Add _mm_stream_si64.H.J. Lu7-6/+41
2011-11-18 H.J. Lu <hongjiu.lu@intel.com> PR target/33944 * doc/extend.texi: Document __builtin_ia32_movnti64. * config/i386/emmintrin.h (_mm_stream_si64): New. * config/i386/i386-builtin-types.def: Add VOID_FTYPE_PLONGLONG_LONGLONG. * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTI64. (bdesc_special_args): Update __builtin_ia32_movnti. Add __builtin_ia32_movnti64. (ix86_expand_special_args_builtin): Handle VOID_FTYPE_PLONGLONG_LONGLONG. * config/i386/i386.md (UNSPEC_MOVNTI): New. * config/i386/sse.md (sse2_movntsi): Renamed to ... (sse2_movnti<mode>): This. From-SVN: r181491
2011-11-18re PR c++/51141 (rev181359 causes Chromium build failure)Fabien Chêne8-0/+179
gcc/testsuite/ChangeLog 2011-11-18 Fabien Chene <fabien@gcc.gnu.org> PR c++/51141 * g++.dg/lookup/using46.C: New. * g++.dg/lookup/using47.C: New. * g++.dg/lookup/using48.C: New. * g++.dg/lookup/using49.C: New. * g++.dg/lookup/using50.C: New. gcc/cp/ChangeLog 2011-11-18 Fabien Chene <fabien@gcc.gnu.org> PR c++/51141 * search.c (lookup_field_1): Handle USING_DECLs for the storted case. From-SVN: r181490
2011-11-18pr44707.c: Do not assume assembler supports /* ...Ulrich Weigand2-1/+6
* gcc.c-torture/compile/pr44707.c: Do not assume assembler supports /* ... */ comments. From-SVN: r181489
2011-11-18re PR target/49868 (Implement named address space to place/access data in ↵Georg-Johann Lay8-395/+1370
flash memory) gcc/ PR target/49868 * config/avr/avr.h (base_arch_s): Add field n_segments. (ADDR_SPACE_PGM1, ADDR_SPACE_PGM2, ADDR_SPACE_PGM3, ADDR_SPACE_PGM4, ADDR_SPACE_PGM5, ADDR_SPACE_PGMX): New address spaces. (AVR_HAVE_ELPM, AVR_HAVE_ELPMX): New defines. (INIT_EXPANDERS): New define. * config/avr/avr-protos.h (avr_mem_pgmx_p): New. (avr_init_expanders): New. (avr_emit_movmemhi, avr_out_movmem): New. (avr_xload_libgcc_p): New. * config/avr/avr-c.c (avr_register_target_pragmas): Register address spaces __pgm1, __pgm2, __pgm3, __pgm4 __pgm5, __pgmx. (avr_cpu_cpp_builtins): Add built-in defines __PGM1, __PGM2, __PGM3, __PGM4, __PGM5, __PGMX. * config/avr/avr-devices.c (avr_arch_types): Set field n_segments. * config/avr/avr.c (AVR_SECTION_PROGMEM): Change define to cover 3 bits instead of just 1. (xstring_empty, xstring_e, rampz_rtx): New static GTYed variables. (progmem_section): Change from section to array of sections. (progmem_section_prefix): New static variable. (avr_file_start): Print set for __RAMPZ__ (avr_option_override): Move initialization of RTXes from here... (avr_init_expanders): ...to this new function. (avr_pgm_segment): New static function. (avr_decl_pgm_p): Handle error_mark_node. (avr_mem_pgmx_p, avr_decl_pgmx_p): New static functions. (avr_out_xload, avr_find_unused_d_reg): New static functions. (expand_prologue, expand_epilogue): Use rampz_rtx. (print_operand): Hande CONST_STRING. (avr_xload_libgcc_p): New static function. (avr_out_lpm_no_lpmx, avr_out_lpm): Handle ELPM. (avr_progmem_p): Return 2 for 24-bit flash address space. (avr_out_sbxx_branch): Clean-up code from ASn macros. (out_movqi_r_mr, out_movqi_mr_r): Ditto. And recognize RAMPZ's address and print symbolically. (avr_asm_named_section, avr_section_type_flags, avr_encode_section_info, avr_asm_select_section, avr_addr_space_address_mode, avr_addr_space_pointer_mode, avr_addr_space_legitimate_address_p, avr_addr_space_convert, avr_addr_space_legitimize_address): Handle new address spaces. (avr_output_progmem_section_asm_op): New static function. (avr_asm_init_sections): Initialize progmem_section[]. (adjust_insn_length): Handle ADJUST_LEN_XLOAD, ADJUST_LEN_MOVMEM. (avr_const_address_lo16): New static function. (avr_assemble_integer): Use it to handle 3-byte integers. (avr_emit_movmemhi, avr_out_movmem): New functions. * config/avr/predicates.md (nox_general_operand): Handle new address spaces. * config/avr/avr.md (unspec): Add UNSPEC_MOVMEM. (adjust_len): Add xload, movmem. (SP_ADDR): New define_constants. (isa): Add "lpm", "lpmx", "elpm", "elpmx". (enabled): Handle them. (load<mode>_libgcc): New expander. (*load.<mode>.libgcc): Rename to load_<mode>_libgcc. (xload8_A, xload<mode>_A): New insn-and-splits. (xload_8, xload_<mode>_libgcc, xload_<mode>, loadmem_elpm): New insns. (mov<mode>): Handle new address spaces. (movmemhi): Rewrite using avr_emit_movmemhi. (MOVMEM_r_d): New mode attribute. (movmem_<mode>, movmem_qi_elpm): New insns. (setmemhi, *clrmemqi, *clrmemhi, strlenhi, *strlenhi): Unquote C-code. Use label instead of hard-coded instrunction lengths. libgcc/ PR target/49868 * config/avr/t-avr (LIB1ASMFUNCS): Add _xload_2 _xload_3 _xload_4. * config/avr/lib1funcs.S (__xload_2, __xload_3, __xload_4): New functions. From-SVN: r181482