aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2017-09-20 15:33:43 +0200
committerUros Bizjak <uros@gcc.gnu.org>2017-09-20 15:33:43 +0200
commit2288ea23816dd1368d92b4386f7f9aab2fcf1aaf (patch)
treef02a8b355a979e7cf7a41d1429839be91ad6d6a4 /gcc
parent20f661fbd2fce6c486bb8b0b5ff1161330c38e7d (diff)
downloadgcc-2288ea23816dd1368d92b4386f7f9aab2fcf1aaf.zip
gcc-2288ea23816dd1368d92b4386f7f9aab2fcf1aaf.tar.gz
gcc-2288ea23816dd1368d92b4386f7f9aab2fcf1aaf.tar.bz2
Revert my 2017-09-19 patch.
From-SVN: r253012
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.md92
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.target/i386/bt-5.c11
-rw-r--r--gcc/testsuite/gcc.target/i386/bt-6.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/bt-mask-3.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/bt-mask-4.c12
7 files changed, 0 insertions, 152 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3ee9ea1..b41cd03 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -130,12 +130,6 @@
2017-09-19 Uros Bizjak <ubizjak@gmail.com>
- * config/i386/i386.md (*scc_bt<mode>): New insn_and_split pattern.
- (*scc_bt<mode>_1): Ditto.
- (*scc_bt<mode>_mask): Ditto.
-
-2017-09-19 Uros Bizjak <ubizjak@gmail.com>
-
* config/i386/i386.c (ix86_split_long_move): Do not handle
address used for LEA in a special way.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index b1bde14..43227dc 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -11246,98 +11246,6 @@
(const_string "SI")
(const_string "<MODE>")))])
-(define_insn_and_split "*scc_bt<mode>"
- [(set (match_operand:QI 0 "nonimmediate_operand")
- (match_operator 1 "bt_comparison_operator"
- [(zero_extract:SWI48
- (match_operand:SWI48 2 "nonimmediate_operand")
- (const_int 1)
- (match_operand:SI 3 "nonmemory_operand"))
- (const_int 0)]))
- (clobber (reg:CC FLAGS_REG))]
- "(TARGET_USE_BT || optimize_function_for_size_p (cfun))
- && (CONST_INT_P (operands[3])
- ? (INTVAL (operands[3]) < GET_MODE_BITSIZE (<MODE>mode)
- && INTVAL (operands[3])
- >= (optimize_function_for_size_p (cfun) ? 8 : 32))
- : !memory_operand (operands[2], <MODE>mode))
- && can_create_pseudo_p ()"
- "#"
- "&& 1"
- [(set (reg:CCC FLAGS_REG)
- (compare:CCC
- (zero_extract:SWI48
- (match_dup 2)
- (const_int 1)
- (match_dup 3))
- (const_int 0)))
- (set (match_dup 0)
- (match_op_dup 1 [(reg:CCC FLAGS_REG) (const_int 0)]))]
-{
- operands[1] = shallow_copy_rtx (operands[1]);
- PUT_CODE (operands[1], reverse_condition (GET_CODE (operands[1])));
-})
-
-(define_insn_and_split "*scc_bt<mode>_1"
- [(set (match_operand:QI 0 "nonimmediate_operand")
- (match_operator 1 "bt_comparison_operator"
- [(zero_extract:SWI48
- (match_operand:SWI48 2 "register_operand")
- (const_int 1)
- (zero_extend:SI
- (match_operand:QI 3 "register_operand")))
- (const_int 0)]))
- (clobber (reg:CC FLAGS_REG))]
- "(TARGET_USE_BT || optimize_function_for_size_p (cfun))
- && can_create_pseudo_p ()"
- "#"
- "&& 1"
- [(set (reg:CCC FLAGS_REG)
- (compare:CCC
- (zero_extract:SWI48
- (match_dup 2)
- (const_int 1)
- (match_dup 3))
- (const_int 0)))
- (set (match_dup 0)
- (match_op_dup 1 [(reg:CCC FLAGS_REG) (const_int 0)]))]
-{
- operands[3] = lowpart_subreg (SImode, operands[3], QImode);
- operands[1] = shallow_copy_rtx (operands[1]);
- PUT_CODE (operands[1], reverse_condition (GET_CODE (operands[1])));
-})
-
-;; Avoid useless masking of bit offset operand.
-(define_insn_and_split "*scc_bt<mode>_mask"
- [(set (match_operand:QI 0 "nonimmediate_operand")
- (match_operator 1 "bt_comparison_operator"
- [(zero_extract:SWI48
- (match_operand:SWI48 2 "register_operand")
- (const_int 1)
- (and:SI
- (match_operand:SI 3 "register_operand")
- (match_operand 4 "const_int_operand")))]))
- (clobber (reg:CC FLAGS_REG))]
- "(TARGET_USE_BT || optimize_function_for_size_p (cfun))
- && (INTVAL (operands[4]) & (GET_MODE_BITSIZE (<MODE>mode)-1))
- == GET_MODE_BITSIZE (<MODE>mode)-1
- && can_create_pseudo_p ()"
- "#"
- "&& 1"
- [(set (reg:CCC FLAGS_REG)
- (compare:CCC
- (zero_extract:SWI48
- (match_dup 2)
- (const_int 1)
- (match_dup 3))
- (const_int 0)))
- (set (match_dup 0)
- (match_op_dup 1 [(reg:CCC FLAGS_REG) (const_int 0)]))]
-{
- operands[1] = shallow_copy_rtx (operands[1]);
- PUT_CODE (operands[1], reverse_condition (GET_CODE (operands[1])));
-})
-
(define_insn_and_split "*jcc_bt<mode>"
[(set (pc)
(if_then_else (match_operator 0 "bt_comparison_operator"
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3ebdab9..65c489e 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -58,13 +58,6 @@
(check_effective_target_frame_pointer_for_non_leaf): Likewise.
(check_effective_target_caller_implicit_probes): Likewise.
-2017-09-19 Uros Bizjak <ubizjak@gmail.com>
-
- * gcc.target/i386/bt-5.c: New test.
- * gcc.target/i386/bt-6.c: Ditto.
- * gcc.target/i386/bt-mask-3.c: Ditto.
- * gcc.target/i386/bt-mask-4.c: Ditto.
-
2017-09-19 Jakub Jelinek <jakub@redhat.com>
* g++.dg/tree-ssa/pr31146-2.C: Only do scan-tree-dump for c++14_down.
diff --git a/gcc/testsuite/gcc.target/i386/bt-5.c b/gcc/testsuite/gcc.target/i386/bt-5.c
deleted file mode 100644
index 309adfe..0000000
--- a/gcc/testsuite/gcc.target/i386/bt-5.c
+++ /dev/null
@@ -1,11 +0,0 @@
-/* PR target/36473 */
-/* { dg-do compile } */
-/* { dg-options "-O2 -mtune=core2" } */
-/* { dg-additional-options "-mregparm=2" { target ia32 } } */
-
-int test(unsigned x, unsigned n)
-{
- return !(x & ( 0x01 << n ));
-}
-
-/* { dg-final { scan-assembler "btl\[ \t\]" } } */
diff --git a/gcc/testsuite/gcc.target/i386/bt-6.c b/gcc/testsuite/gcc.target/i386/bt-6.c
deleted file mode 100644
index 994ec43..0000000
--- a/gcc/testsuite/gcc.target/i386/bt-6.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* PR target/36473 */
-/* { dg-do compile } */
-/* { dg-options "-O2 -mtune=core2" } */
-/* { dg-additional-options "-mregparm=2" { target ia32 } } */
-
-int test(unsigned long x, unsigned long n)
-{
- return !(x & ( (long)0x01 << n ));
-}
-
-/* { dg-final { scan-assembler "btl\[ \t\]" { target { ! lp64 } } } } */
-/* { dg-final { scan-assembler "btq\[ \t\]" { target lp64 } } } */
diff --git a/gcc/testsuite/gcc.target/i386/bt-mask-3.c b/gcc/testsuite/gcc.target/i386/bt-mask-3.c
deleted file mode 100644
index bf3a404..0000000
--- a/gcc/testsuite/gcc.target/i386/bt-mask-3.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-O2 -mtune=core2" } */
-/* { dg-additional-options "-mregparm=2" { target ia32 } } */
-
-int test (unsigned x, unsigned n)
-{
- n &= 0x1f;
-
- return !(x & (0x01 << n));
-}
-
-/* { dg-final { scan-assembler-not "and\[lq\]\[ \t\]" } } */
diff --git a/gcc/testsuite/gcc.target/i386/bt-mask-4.c b/gcc/testsuite/gcc.target/i386/bt-mask-4.c
deleted file mode 100644
index 8198646..0000000
--- a/gcc/testsuite/gcc.target/i386/bt-mask-4.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* { dg-do compile } */
-/* { dg-options "-O2 -mtune=core2" } */
-/* { dg-additional-options "-mregparm=2" { target ia32 } } */
-
-int test (unsigned long x, unsigned long n)
-{
- n &= 0x3f;
-
- return !(x & ((long)0x01 << n));
-}
-
-/* { dg-final { scan-assembler-not "and\[lq\]\[ \t\]" } } */