diff options
author | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-25 15:07:02 +0000 |
---|---|---|
committer | uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-05-25 15:07:02 +0000 |
commit | 4547680646c1b61f918fff01ab824f95569a99d5 (patch) | |
tree | e0ac89d83b3cf80fb363eb3cf24e41875a962aa9 /gcc | |
parent | b04c1b7f0876e640754a3dca849aacc74af4c3f3 (diff) | |
download | gcc-4547680646c1b61f918fff01ab824f95569a99d5.tar.gz |
PR target/53474
* config/i386/i386.c (ix86_print_operand) <case 'O'>: Print '.' here.
<case 'C', case 'c', case 'F', case 'f'>: Print '.' only for C and c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@187885 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 35 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 19 | ||||
-rw-r--r-- | gcc/cp/decl.c | 3 |
3 files changed, 34 insertions, 23 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 677dcac8f43..ce680f0c817 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2012-05-25 Uros Bizjak <ubizjak@gmail.com> + + PR target/53474 + * config/i386/i386.c (ix86_print_operand) <case 'O'>: Print '.' here. + <case 'C', case 'c', case 'F', case 'f'>: Print '.' only for C and c. + 2012-05-25 Alexander Ivchenko <alexander.ivchenko@intel.com> PR target/53435 @@ -125,20 +131,24 @@ symbol_alias_set_t, symbol_alias_set_destroy, symbol_alias_set_contains, propagate_aliases_backward): Remove. * toplev.c (compile_file): Do not call finish_aliases_2 - * cgraphunit.c (cgraph_process_new_functions): Do not call finish_aliases_1. + * cgraphunit.c (cgraph_process_new_functions): Do not call + finish_aliases_1. (handle_alias_pairs): Output diagnostics about aliases to externals. (assemble_thunks_and_aliases): Use do_assemble_alias. (output_weakrefs): Likewise. (finalize_compilation_unit): Do not call finish_aliases_1. - * ipa.c (symtab_remove_unreachable_nodes): De not call remove_unreachable_alias_pairs. + * ipa.c (symtab_remove_unreachable_nodes): De not call + remove_unreachable_alias_pairs. * varasm.c (do_assemble_alias): Export. - (symbol_alias_set_create, symbol_alias_set_destroy, symbol_alias_set_contains, - symbol_alias_set_insert, propagate_aliases_forward, propagate_aliases_backward, - propagate_aliases_backward, trivially_visible_alias, trivially_defined_alias, - remove_unreachable_alias_pairs, finish_aliases_1, finish_aliases_2, - assemble_alias): Remove. + (symbol_alias_set_create, symbol_alias_set_destroy, + symbol_alias_set_contains, symbol_alias_set_insert, + propagate_aliases_forward, propagate_aliases_backward, + propagate_aliases_backward, trivially_visible_alias, + trivially_defined_alias, remove_unreachable_alias_pairs, + finish_aliases_1, finish_aliases_2, assemble_alias): Remove. * output.h (do_assemble_alias): Declare. - * varpool.c (varpool_remove_unreferenced_decls): Do not call finish_aliases_1. + * varpool.c (varpool_remove_unreferenced_decls): Do not call + finish_aliases_1. 2012-05-23 Martin Jambor <mjambor@suse.cz> @@ -211,15 +221,13 @@ * lto-streamer-in.c (input_cfg): Likewise. * tree-inline.c (initialize_cfun): Likewise. * tree-into-ssa.c (rewrite_into_ssa): Likewise. - * omp-low.c (expand_omp_taskreg): Likewise. Avoid switching - cfun. + * omp-low.c (expand_omp_taskreg): Likewise. Avoid switching cfun. * gimple.c (is_gimple_reg): Optimize the SSA_NAME case, virtual operands are not registers. 2012-05-22 Richard Guenther <rguenther@suse.de> - * tree-cfg.c (verify_gimple_assign_unary): Fix typo in previous - commit. + * tree-cfg.c (verify_gimple_assign_unary): Fix typo in previous commit. 2012-05-22 Richard Guenther <rguenther@suse.de> @@ -231,8 +239,7 @@ * tree-flow.h (add_referenced_var_1): Declare. (add_referenced_var): Define. - * tree-dfa.c (referenced_var_check_and_insert): Avoid one hash - lookup. + * tree-dfa.c (referenced_var_check_and_insert): Avoid one hash lookup. (add_referenced_var): Rename to ... (add_referenced_var_1): ... this. Take struct function argument. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 51deb1a9da1..9e4ada03be4 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -13931,8 +13931,8 @@ get_some_local_dynamic_name (void) C -- print opcode suffix for set/cmov insn. c -- like C, but print reversed condition F,f -- likewise, but for floating-point. - O -- if HAVE_AS_IX86_CMOV_SUN_SYNTAX, print the opcode suffix for - the size of the current operand, otherwise nothing. + O -- if HAVE_AS_IX86_CMOV_SUN_SYNTAX, expand to "w.", "l." or "q.", + otherwise nothing R -- print the prefix for register names. z -- print the opcode suffix for the size of the current operand. Z -- likewise, with special suffixes for x87 instructions. @@ -14061,6 +14061,8 @@ ix86_print_operand (FILE *file, rtx x, int code) ("invalid operand size for operand code 'O'"); return; } + + putc ('.', file); #endif return; @@ -14320,20 +14322,21 @@ ix86_print_operand (FILE *file, rtx x, int code) } return; - case 'C': - case 'c': case 'F': case 'f': +#ifdef HAVE_AS_IX86_CMOV_SUN_SYNTAX + if (ASSEMBLER_DIALECT == ASM_ATT) + putc ('.', file); +#endif + + case 'C': + case 'c': if (!COMPARISON_P (x)) { output_operand_lossage ("operand is not a condition code, " "invalid operand code '%c'", code); return; } -#ifdef HAVE_AS_IX86_CMOV_SUN_SYNTAX - if (ASSEMBLER_DIALECT == ASM_ATT) - putc ('.', file); -#endif put_condition_code (GET_CODE (x), GET_MODE (XEXP (x, 0)), code == 'c' || code == 'f', code == 'F' || code == 'f', diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index d883da6b640..14a6a40d6ce 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -9803,7 +9803,8 @@ grokdeclarator (const cp_declarator *declarator, clones. */ DECL_ABSTRACT (decl) = 1; } - else if (constructor_name_p (unqualified_id, current_class_type)) + else if (current_class_type + && constructor_name_p (unqualified_id, current_class_type)) permerror (input_location, "ISO C++ forbids nested type %qD with same name " "as enclosing class", unqualified_id); |