Deleted Added
full compact
arm.md (256281) arm.md (260455)
1;;- Machine description for ARM for GNU compiler
2;; Copyright 1991, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999, 2000,
3;; 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4;; Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
5;; and Martin Simmons (@harleqn.co.uk).
6;; More major hacks by Richard Earnshaw (rearnsha@arm.com).
7
8;; This file is part of GCC.

--- 8827 unchanged lines hidden (view full) ---

8836(define_insn "*negscc"
8837 [(set (match_operand:SI 0 "s_register_operand" "=r")
8838 (neg:SI (match_operator 3 "arm_comparison_operator"
8839 [(match_operand:SI 1 "s_register_operand" "r")
8840 (match_operand:SI 2 "arm_rhs_operand" "rI")])))
8841 (clobber (reg:CC CC_REGNUM))]
8842 "TARGET_ARM"
8843 "*
1;;- Machine description for ARM for GNU compiler
2;; Copyright 1991, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999, 2000,
3;; 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4;; Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
5;; and Martin Simmons (@harleqn.co.uk).
6;; More major hacks by Richard Earnshaw (rearnsha@arm.com).
7
8;; This file is part of GCC.

--- 8827 unchanged lines hidden (view full) ---

8836(define_insn "*negscc"
8837 [(set (match_operand:SI 0 "s_register_operand" "=r")
8838 (neg:SI (match_operator 3 "arm_comparison_operator"
8839 [(match_operand:SI 1 "s_register_operand" "r")
8840 (match_operand:SI 2 "arm_rhs_operand" "rI")])))
8841 (clobber (reg:CC CC_REGNUM))]
8842 "TARGET_ARM"
8843 "*
8844 if (GET_CODE (operands[3]) == LT && operands[3] == const0_rtx)
8844 if (GET_CODE (operands[3]) == LT && operands[2] == const0_rtx)
8845 return \"mov\\t%0, %1, asr #31\";
8846
8847 if (GET_CODE (operands[3]) == NE)
8848 return \"subs\\t%0, %1, %2\;mvnne\\t%0, #0\";
8849
8845 return \"mov\\t%0, %1, asr #31\";
8846
8847 if (GET_CODE (operands[3]) == NE)
8848 return \"subs\\t%0, %1, %2\;mvnne\\t%0, #0\";
8849
8850 if (GET_CODE (operands[3]) == GT)
8851 return \"subs\\t%0, %1, %2\;mvnne\\t%0, %0, asr #31\";
8852
8853 output_asm_insn (\"cmp\\t%1, %2\", operands);
8854 output_asm_insn (\"mov%D3\\t%0, #0\", operands);
8855 return \"mvn%d3\\t%0, #0\";
8856 "
8857 [(set_attr "conds" "clob")
8858 (set_attr "length" "12")]
8859)
8860

--- 1444 unchanged lines hidden ---
8850 output_asm_insn (\"cmp\\t%1, %2\", operands);
8851 output_asm_insn (\"mov%D3\\t%0, #0\", operands);
8852 return \"mvn%d3\\t%0, #0\";
8853 "
8854 [(set_attr "conds" "clob")
8855 (set_attr "length" "12")]
8856)
8857

--- 1444 unchanged lines hidden ---