Module Name: src
Committed By: matt
Date: Sun Aug 17 16:25:21 UTC 2014
Modified Files:
src/external/gpl3/gcc/dist/gcc/config/vax: builtins.md vax.c
Log Message:
Rework so that the ctzsi builtin is supported.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 \
src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md
cvs rdiff -u -r1.9 -r1.10 src/external/gpl3/gcc/dist/gcc/config/vax/vax.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md
diff -u src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md:1.3 src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md:1.4
--- src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md:1.3 Sat Mar 1 08:58:33 2014
+++ src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md Sun Aug 17 16:25:21 2014
@@ -37,17 +37,17 @@
"
{
rtx label = gen_label_rtx ();
- emit_insn (gen_ffssi2_internal (operands[0], operands[1]));
+ emit_insn (gen_ctzsi2 (operands[0], operands[1]));
emit_jump_insn (gen_condjump (gen_rtx_NE(VOIDmode, cc0_rtx, const0_rtx), label));
- emit_insn (gen_negsi2 (operands[0], const1_rtx));
+ emit_move_insn (operands[0], constm1_rtx);
emit_label (label);
emit_insn (gen_addsi3 (operands[0], operands[0], const1_rtx));
DONE;
}")
-(define_insn "ffssi2_internal"
+(define_insn "ctzsi2"
[(set (match_operand:SI 0 "nonimmediate_operand" "=rQ")
- (ffs:SI (match_operand:SI 1 "general_operand" "nrmT")))
+ (ctz:SI (match_operand:SI 1 "general_operand" "nrmT")))
(set (cc0) (match_dup 0))]
""
"ffs $0,$32,%1,%0")
Index: src/external/gpl3/gcc/dist/gcc/config/vax/vax.c
diff -u src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.9 src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.10
--- src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.9 Wed Jun 4 16:11:32 2014
+++ src/external/gpl3/gcc/dist/gcc/config/vax/vax.c Sun Aug 17 16:25:21 2014
@@ -1117,6 +1117,7 @@ vax_notice_update_cc (rtx exp, rtx insn
case IOR:
case XOR:
case NOT:
+ case CTZ:
case MEM:
case REG:
cc_status.flags = CC_NO_OVERFLOW;