Commit dee16055 by Andreas Schwab

m68k.md (rotrhi3+1): Name it rotrhi_lowpart.

* gcc/config/m68k/m68k.md (rotrhi3+1): Name it rotrhi_lowpart.
(bswapsi2): New expander.

From-SVN: r186361
parent dcc73abf
2012-04-11 Andreas Schwab <schwab@linux-m68k.org>
* config/m68k/m68k.md (rotrhi3+1): Name it rotrhi_lowpart.
(bswapsi2): New expander.
2012-04-11 H.J. Lu <hongjiu.lu@intel.com>
* config/host-linux.c (TRY_EMPTY_VM_SPACE): Defined to
......@@ -10,7 +15,7 @@
Don't call mark_reg_pointer for incompatible pointer sign
extension.
* reginfo.c (reg_scan_mark_refs): Call set_reg_attrs_from_value
* reginfo.c (reg_scan_mark_refs): Call set_reg_attrs_from_value
directly.
2012-04-11 Bernd Schmidt <bernds@codesourcery.com>
......@@ -159,24 +164,24 @@
2012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR 24985
* diagnostic.h (show_caret): Declare.
* diagnostic.h (show_caret): Declare.
(caret_max_width): Declare.
(diagnostic_show_locus): Declare.
* diagnostic.c (diagnostic_initialize): Initialize to false.
(diagnostic_show_locus): New.
(diagnostic_report_diagnostic): Call it.
* diagnostic.c (diagnostic_initialize): Initialize to false.
(diagnostic_show_locus): New.
(diagnostic_report_diagnostic): Call it.
(getenv_columns): New.
(adjust_line): New.
(diagnostic_set_caret_max_width): New.
* input.c (read_line): New.
* input.c (read_line): New.
(location_get_source_line): New.
* input.h (location_get_source_line): Declare.
* toplev.c (general_init): Initialize show_caret from options.
* dwarf2out.c (gen_producer_string): Handle fdiagnostics-show-caret.
* opts.c (common_handle_option): Likewise.
* input.h (location_get_source_line): Declare.
* toplev.c (general_init): Initialize show_caret from options.
* dwarf2out.c (gen_producer_string): Handle fdiagnostics-show-caret.
* opts.c (common_handle_option): Likewise.
* pretty-print.h (pp_get_prefix): New.
(pp_base_get_prefix): New.
* common.opt (fdiagnostics-show-caret): New option.
* common.opt (fdiagnostics-show-caret): New option.
* doc/invoke.texi (fdiagnostics-show-caret): Document it.
2012-04-11 Richard Guenther <rguenther@suse.de>
......@@ -304,7 +309,7 @@
PR lto/52722
PR lto/51765
PR lto/52634
PR lto/52634
* lto-cgraph.c (compute_ltrans_boundary): When alias is in the boundary,
add its target too.
* lto.c (add_references_to_partition): Add also aliased nodes.
......@@ -548,14 +553,14 @@
2012-04-03 Sandeep Kumar Singh <Sandeep.Singh2@kpitcummins.com>
* h8300/h8300.c (h8300_current_function_monitor_function_p):
New function. Added to check monitor functions.
(h8300_option_override): Modified to generate error/warning
messages for invalid combinations of different command line
New function. Added to check monitor functions.
(h8300_option_override): Modified to generate error/warning
messages for invalid combinations of different command line
options.
* h8300/h8300.md: Generate 'rte' for monitor functions. Do not
save EXR on stack for monitor function in case of H8S target
save EXR on stack for monitor function in case of H8S target
when "-mno-exr" is passed.
* h8300/h8300-protos.h
* h8300/h8300-protos.h
(h8300_current_function_monitor_function_p): Add prototype.
* doc/invoke.texi: Document H8S options.
......
;;- Machine description for GNU compiler, Motorola 68000 Version
;; Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001,
;; 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
;; 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012
;; Free Software Foundation, Inc.
;; This file is part of GCC.
......@@ -5475,7 +5475,7 @@
"!TARGET_COLDFIRE"
"ror%.w %2,%0")
(define_insn ""
(define_insn "rotrhi_lowpart"
[(set (strict_low_part (match_operand:HI 0 "register_operand" "+d"))
(rotatert:HI (match_dup 0)
(match_operand:HI 1 "general_operand" "dI")))]
......@@ -5495,6 +5495,19 @@
(match_operand:QI 1 "general_operand" "dI")))]
"!TARGET_COLDFIRE"
"ror%.b %1,%0")
(define_expand "bswapsi2"
[(set (match_operand:SI 0 "register_operand")
(bswap:SI (match_operand:SI 1 "register_operand")))]
"!TARGET_COLDFIRE"
{
rtx x = operands[0];
emit_move_insn (x, operands[1]);
emit_insn (gen_rotrhi_lowpart (gen_lowpart (HImode, x), GEN_INT (8)));
emit_insn (gen_rotlsi3 (x, x, GEN_INT (16)));
emit_insn (gen_rotrhi_lowpart (gen_lowpart (HImode, x), GEN_INT (8)));
DONE;
})
;; Bit set/clear in memory byte.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment