- 04 Mar, 2015 20 commits
-
-
From-SVN: r221191
Joseph Myers committed -
re PR target/65261 (bootstrap-ubsan ppc64le: gcc/libcpp/lex.c:552:30: runtime error: load of misaligned address 0x01002172dfc6 for type 'const uchar', which requires 16 byte alignment) Fix PR65261 Running bootstrap-ubsan on ppc64le shows many instances of: libcpp/lex.c:552:30: runtime error: load of misaligned address 0x01001f31d37a for type 'const uchar', which requires 16 byte alignment But the unaligned vector loads are intended in this case, because they are preferable to forced-alignment on POWER8. So just silence the ubsan errors. 2015-03-02 Markus Trippelsdorf <markus@trippelsdorf.de> include/ PR target/65261 * ansidecl.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro. libcpp/ PR target/65261 * lex.c (search_line_fast): Silence ubsan errors. From-SVN: r221190
Markus Trippelsdorf committed -
PR libstdc++/64797 * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle incomplete multibyte sequences correctly. * include/std/codecvt (codecvt_utf8, codecvt_utf16, codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point. * src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character): Define constants. (is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point): Define convenience functions. (read_utf8_code_point): Return relevant constant to distinguish incomplete characters from invalid sequences. (read_utf16_code_point): Likewise. Check for invalid sequences. (ucs4_in, utf16_in): Use incomplete_mb_character constant. (utf16_out): Check for invalid sequences. (utf16_span): Fix condition. (ucs2_out): Use is_high_surrogate. (ucs2_in): Use incomplete_mb_character constant and fix condition. * testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace. * testsuite/22_locale/conversions/buffer/1.cc: New. * testsuite/22_locale/conversions/string/2.cc: Use char16_t and char32_t instead of wchar_t. * testsuite/22_locale/conversions/string/3.cc: New. From-SVN: r221189
Jonathan Wakely committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * sem_warn.adb: Minor reformatting. * init.c: Minor tweaks. 2015-03-04 Dmitriy Anisimko <anisimko@adacore.com> * a-coinho-shared.adb: Fix clear of already empty holder. 2015-03-04 Robert Dewar <dewar@adacore.com> * exp_unst.adb (Check_Dynamic_Type): Ignore library level types. (Check_Uplevel_Reference_To_Type): Ignore call inside generic. (Note_Uplevel_Reference): Ignore call inside generic. (Note_Uplevel_Reference): Fix check for no entity field. (Unnest_Subprogram): Ignore call inside generic. (Find_Current_Subprogram): Use Defining_Entity, not Defining_Unit_Name. (Visit_Node): Ignore calls to Imported subprograms. (Visit_Node): Fix problem in finding subprogram body in some cases. (Add_Form_To_Spec): Use Defining_Entity, not Defining_Unit_Name. From-SVN: r221188
Arnaud Charlet committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * einfo.adb (Is_ARECnF_Entity): Removed. (Last_Formal): Remove special handling of Is_ARECnF_Entity. (Next_Formal): Remove special handling of Is_ARECnF_Entity. (Next_Formal_With_Extras): Remove special handling of Is_ARECnF_Entity. (Number_Entries): Minor reformatting. * einfo.ads (Is_ARECnF_Entity): Removed. * exp_unst.adb (Unnest_Subprogram): Remove setting of Is_ARECnF_Entity. (Add_Extra_Formal): Use normal Extra_Formal circuit. * sprint.adb (Write_Param_Specs): Properly handle case where there are no source formals, but we have at least one Extra_Formal present. 2015-03-04 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb (Resolve_Record_Aggregate, Add_Discriminant_Values): If the value is a reference to the current instance of an enclosing type, use its base type to check against prefix of attribute reference, because the target type may be otherwise constrained. From-SVN: r221187
Arnaud Charlet committed -
From-SVN: r221186
Ian Lance Taylor committed -
* config/rl78/rl78.h (enum reg_class): Remove real registers from General register class. * config/rl78/rl78-real.md: Replace general register constraints with real+virtual register constraints. From-SVN: r221185
Nick Clifton committed -
* gcc/config/s390/s390.c (s390_expand_builtin): Exlude non-htm builtins from checking for -mhtm option. From-SVN: r221184
Andreas Krebbel committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * atree.h: Add entries for Flag287-Flag309. * einfo.adb: Add (unused) flags Flag287-Flag309. 2015-03-04 Ed Schonberg <schonberg@adacore.com> * sem_util.adb (Collect_Interfaces, Collect): When gathering interfaces of ancestors, handle properly a subtype of a private extension. From-SVN: r221183
Arnaud Charlet committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * einfo.adb (Is_ARECnF_Entity): New flag (ARECnF is an extra formal). (Next_Formal): Don't return ARECnF formal. (Last_Formal): Don't consider ARECnF formal. (Next_Formal_With_Extras): Do consider ARECnF formal. * einfo.ads (Is_ARECnF_Entity): New flag (ARECnF is an extra formal). * exp_unst.adb (Create_Entities): Set Is_ARECnF_Entity flag. 2015-03-04 Javier Miranda <miranda@adacore.com> * exp_ch6.adb (Expand_Simple_Function_Return): When the returned object is a class-wide interface object and we generate the accessibility described in RM 6.5(8/3) then displace the pointer to the object to reference the base of the object (to get access to the TSD of the object). From-SVN: r221182
Arnaud Charlet committed -
re PR c++/64227 (Forwarding an argument of a function template to a generic lambda causes a compiler crash) 2015-03-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/64227 * g++.dg/cpp1y/lambda-generic-ice1.C: New. From-SVN: r221181
Paolo Carlini committed -
2015-03-04 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Abstract_State): Use routine Malformed_State_Error to issue general errors. (Analyze_Pragma): Diagnose a syntax error related to a state declaration with a simple option. (Malformed_State_Error): New routine. 2015-03-04 Robert Dewar <dewar@adacore.com> * a-strsup.adb (Super_Slice): Deal with super flat case. * einfo.ads: Minor reformatting. * s-imgdec.adb (Set_Decimal_Digits): Add comment about possibly redundant code. 2015-03-04 Claire Dross <dross@adacore.com> * a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads, a-cforse.ads, a-cofove.ads: Use Default_Initial_Condition on formal containers. From-SVN: r221180
Arnaud Charlet committed -
From-SVN: r221179
Arnaud Charlet committed -
2015-03-04 Ed Schonberg <schonberg@adacore.com> * sem_warn.adb (Check_References): When checking for an unused in-out parameter of a class- wide type, use its type to determine whether it is private, in order to avoid a spurious warning when subprogram spec and body are in different units. 2015-03-04 Yannick Moy <moy@adacore.com> * sem_attr.adb: Improve warning messages. From-SVN: r221178
Arnaud Charlet committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * exp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest generic subprograms. * exp_unst.adb (Check_Dynamic_Type): Handle record types properly (Note_Uplevel_Reference): Ignore uplevel references to non-types (Get_Level): Consider only subprograms, not blocks. (Visit_Node): Set proper condition for generating ARECnF entity. Ignore indirect calls. Ignore calls to subprograms outside our nest. (Unnest_Subprogram): Minor changes in dealing with ARECnF entity. (Add_Form_To_Spec): Properly set Last_Entity field. (Unnest_Subprogram): Set current subprogram scope for analyze calls. Handle case of no uplevel refs in outer subprogram Don't mark uplevel entities as aliased. Don't deal with calls with no ARECnF requirement. 2015-03-04 Robert Dewar <dewar@adacore.com> * s-valrea.adb (Scan_Real): Remove redundant tests from scaling loops. * s-imgdec.adb (Set_Decimal_Digits): Remove redundant Max operation in computing LZ. * sem_attr.adb: Minor typo fix From-SVN: r221177
Robert Dewar committed -
2015-03-04 Robert Dewar <dewar@adacore.com> * exp_ch7.adb: Minor reformatting. * exp_unst.adb (Build_Tables): Fix minor glitch for no separate spec case. * erroutc.adb (Delete_Msg): add missing decrement of info msg counter. 2015-03-04 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb (Build_Pragma_Check_Equivalent): Suppress references to formal parameters subject to pragma Unreferenced. (Suppress_Reference): New routine. * sem_attr.adb (Analyze_Attribute): Reimplement the analysis of attribute 'Old. Attributes 'Old and 'Result now share common processing. (Analyze_Old_Result_Attribute): New routine. (Check_Placement_In_Check): Removed. (Check_Placement_In_Contract_Cases): Removed. (Check_Placement_In_Test_Case): Removed. (Check_Use_In_Contract_Cases): Removed. (Check_Use_In_Test_Case): Removed. (In_Refined_Post): Removed. (Is_Within): Removed. * sem_warn.adb (Check_Low_Bound_Tested): Code cleanup. (Check_Low_Bound_Tested_For): New routine. 2015-03-04 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): Generate a runtime check to test the expression of pragma Default_Initial_Condition when the object is default initialized. From-SVN: r221176
Arnaud Charlet committed -
gcc/testsuite/ * gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Add -fno-ipa-icf to dg-options * gcc.target/aarch64/vect_saddl_1.c: Likewise. * gcc.target/aarch64/vect_smlal_1.c: Likewise. From-SVN: r221175
James Greenhalgh committed -
2015-03-04 Paolo Carlini <paolo.carlini@oracle.com> PR c++/64398 * g++.dg/cpp0x/decltype62.C: New. From-SVN: r221174
Paolo Carlini committed -
* tree-sra.c (convert_callers): Use call_for_symbol_and_aliases. (struct ipa_sra_check_caller_data): Add has_thunk field. (ipa_sra_check_caller): Check for thunk. (ipa_sra_preliminary_function_checks): Give up on function with thunks. (ipa_early_sra): Use call_for_symbol_and_aliases. From-SVN: r221171
Jan Hubicka committed -
From-SVN: r221169
GCC Administrator committed
-
- 03 Mar, 2015 20 commits
-
-
re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compiling protobuf on sh4) PR target/65249 * config/sh/sh.md (symGOT_load): Use R0 reg for operands[2] when called for __stack_chk_guard symbol. From-SVN: r221165
Kaz Kojima committed -
* config/rl78/rl78-real.md (*addqi_real): Allow SADDR types for inc/dec. (*addhi3_real): Likewise. * config/rl78/rl78-virt.md (*inc<mode>3_virt): Additional pattern to match incrementing memory. * config/rl78/predicates.md (rl78_1_2_operand): New. * config/rl78/rl78.c (rl78_force_nonfar_3): Allow far mem-mem if it's the same and only mem. (rl78_alloc_physical_registers_op2): If there's effectively only one MEM, transcode it into HL. (rl78_far_p): Reject addresses that aren't legitimate. From-SVN: r221164
DJ Delorie committed -
re PR c++/65295 ([C++1y] constexpr function causes ICE if it returns a local variable bigger than 16 bytes) PR c++/65295 * constexpr.c (cxx_eval_constant_expression): Remove assert in RESULT_DECL handling. From-SVN: r221161
Aldy Hernandez committed -
re PR libstdc++/64883 (FAIL: 17_intro/headers/c++*/all_attributes.cc (test for excess errors) on x86_64-apple-darwin10) 2015-03-03 Iain Sandoe <iain@codesourcery.com> PR libstdc++/64883 * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check visibility for Darwin. * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and also deprecated. * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise. From-SVN: r221160
Iain Sandoe committed -
* fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before negating it. * tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message. From-SVN: r221159
Eric Botcazou committed -
call0 is an ABI that doesn't use register windows. 2015-03-03 Max Filippov <jcmvbkbc@gmail.com> gcc/ * config/xtensa/constraints.md ("a" constraint): Include stack pointer in case of call0 ABI. ("q" constraint): Make empty in case of call0 ABI. ("D" constraint): Include stack pointer in case of call0 ABI. * config/xtensa/xtensa-protos.h (xtensa_set_return_address, xtensa_expand_epilogue, xtensa_regno_to_class): Add new function prototypes. * config/xtensa/xtensa.c (xtensa_callee_save_size): New variable. (xtensa_regno_to_class): Make it a local variable in the function xtensa_regno_to_class. (xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove macro, function prototype and implementation. (reg_nonleaf_alloc_order): Make it a local variable in the function order_regs_for_local_alloc. (xtensa_conditional_register_usage): New function. (TARGET_CONDITIONAL_REGISTER_USAGE): Define macro. (xtensa_valid_move): Allow direct moves to stack pointer register in call0 ABI. (xtensa_setup_frame_addresses): Only spill register windows in windowed ABI. (xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and call0 ABI respectively. (xtensa_function_arg_1): Only mark a7 register for copying in windowed ABI. (xtensa_call_save_reg): New function. (compute_frame_size): Add space for callee saved register storage to the frame size in call0 ABI. (xtensa_expand_prologue): Generate code to set up stack frame and save callee-saved registers in call0 ABI. (xtensa_expand_epilogue): New function. (xtensa_set_return_address): New function. (xtensa_return_addr): Calculate return address in call0 ABI. (xtensa_builtin_saveregs): Only mark a7 register for copying and emit copying code in windowed ABI. (order_regs_for_local_alloc): Add preferred register allocation order for non-leaf function in call0 ABI. (xtensa_static_chain): Add atatic chain passing for call0 ABI. (xtensa_asm_trampoline_template): Add trampoline generation for call0 ABI. (xtensa_trampoline_init): Add trampoline initialization for call0 ABI. (xtensa_conditional_register_usage, xtensa_regno_to_class): New functions. * config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro. (TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI. (CALL_USED_REGISTERS): Modify to encode both windowed and call0 ABI call-used registers. (HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI. (INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in call0 ABI. (REG_CLASS_CONTENTS): Include all registers into the preferred reload registers set, adjust the set in the xtensa_conditional_register_usage. (xtensa_regno_to_class): Drop variable declaration. (REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class function. (WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI respectively. (FUNCTION_PROFILER): Add _mcount call for call0 ABI. (TRAMPOLINE_SIZE): Define trampoline size for call0 ABI. (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI. (ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool location in call0 ABI. (EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing stack adjustment size when handling exception. (CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI. * config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New definitions. ("return" pattern): Generate ret.n/ret in call0 ABI. ("epilogue" pattern): Expand epilogue. ("nonlocal_goto" pattern): Use default in call0 ABI. ("eh_return" pattern): Move implementation to eh_set_a0_windowed, emit eh_set_a0_* depending on ABI. ("eh_set_a0_windowed" pattern): Former eh_return pattern. ("eh_set_a0_call0", "blockage"): New patterns. libgcc/ * config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill, __xtensa_nonlocal_goto): Don't compile for call0 ABI. (__xtensa_sync_caches): Only use entry and retw in windowed ABI, use ret in call0 ABI. * config/xtensa/t-windowed: New file. * libgcc/config/xtensa/t-xtensa (LIB2ADDEH): Move to t-windowed. * libgcc/configure: Regenerated. * libgcc/configure.ac: Check if xtensa target is configured for windowed ABI and thus needs to use custom unwind code. From-SVN: r221158
Max Filippov committed -
PR ipa/65287 * gcc.dg/ipa/pr65287.c: New test. From-SVN: r221157
Jan Hubicka committed -
PR ipa/65287 * ipa-icf.c (sem_variable::parse): Skip all alias variables. * gcc.dg/ipa/pr65287.c: New test. From-SVN: r221156
Martin Liska committed -
2015-03-03 Michael Meissner <meissner@linux.vnet.ibm.com> PR 65138/target * config/rs6000/rs6000-tables.opt: Regenerate table. From-SVN: r221155
Michael Meissner committed -
* MAINTAINERS: Remove Paul Brook as a Fortran and ARM maintainer. Remove Richard Henderson as a maintainer for the x86 port. From-SVN: r221154
Jeff Law committed -
2015-03-03 Renlin Li <renlin.li@arm.com> gcc/ * doc/md.texi (@item ^): ChangeLog ? into ^. From-SVN: r221152
Renlin Li committed -
* doc/tm.texi: Regenerated. From-SVN: r221151
H.J. Lu committed -
This allows a target to support both windowed and non-windowed ABI. 2015-03-03 Max Filippov <jcmvbkbc@gmail.com> gcc/ * builtins.c (expand_builtin_return_addr): Add RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove surrounding #ifdef. * config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change definition to 1. * config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Likewise. * defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if undefined. * doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update paragraph. From-SVN: r221150
Max Filippov committed -
2015-03-03 Joern Rennecke <gnu@amylaar.uk> * MAINTAINERS (CPU Port Maintainers): Update my email address. From-SVN: r221149
Joern Rennecke committed -
2015-03-03 Martin Jambor <mjambor@suse.cz> Eric Botcazou <ebotcazou@adacore.com> gcc/ * tree-sra.c (ipa_sra_check_caller_data): New type. (has_caller_p): Removed. (ipa_sra_check_caller): New function. (ipa_sra_preliminary_function_checks): Use it. gcc/changelog/ * gnat.dg/specs/pack12.ads: New test. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> From-SVN: r221148
Martin Jambor committed -
* ipa-icf.c (sem_item_optimizer::merge_classes): Use bit or instead of if branch. From-SVN: r221147
Martin Liska committed -
Fix PR ipa/65282. * gcc.dg/ipa/PR65282.c: New test. PR ipa/65282 * ipa-icf.c (sem_variable::equals): Fix wrong condition. From-SVN: r221146
Martin Liska committed -
re PR tree-optimization/65241 (ICE (in remove_local_expressions_from_table, at tree-ssa-dom.c:1081)) PR tree-optimization/65241 * tree-ssa-dom.c (lookup_avail_expr): Only modify the avail_expr hash table if INSERT is true. PR tree-optimization/65241 * gcc.c-torture/compile/pr65241.c: New test. From-SVN: r221145
Jeff Law committed -
PR target/65296 * config.gcc (extra_gcc_objs) [avr-*-rtems*]: Remove. From-SVN: r221144
Georg-Johann Lay committed -
gcc/ PR target/64331 * config/avr/avr.c (context.h, tree-pass.h): Include them. (avr_pass_data_recompute_notes): New static variable. (avr_pass_recompute_notes): New class. (avr_register_passes): New static function. (avr_option_override): Call it. gcc/testsuite/ PR target/64331 * gcc.target/avr/torture/pr64331.c: New test. From-SVN: r221143
Georg-Johann Lay committed
-