aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <jlaw@ventanamicro.com>2023-07-22 09:47:21 -0600
committerJeff Law <jlaw@ventanamicro.com>2023-07-22 09:51:46 -0600
commitbb095e8a343db043a0cd0b0da9b2ab1186d1a1ed (patch)
treef0999a4fb68744a86db2bdcf258b10644ede2874
parent73cc6ce1294ec35e9322b1bbc91009cfc76f732b (diff)
downloadgcc-bb095e8a343db043a0cd0b0da9b2ab1186d1a1ed.zip
gcc-bb095e8a343db043a0cd0b0da9b2ab1186d1a1ed.tar.gz
gcc-bb095e8a343db043a0cd0b0da9b2ab1186d1a1ed.tar.bz2
[committed] Fix length computation bug in bfin port
The tester seemed to occasionally ping-pong a compilation failure on the builtin-bitops-1.c test. I long suspected it was something like length computations. I finally got a few minutes to dig into it, and sure enough the blackfin port was claiming the "ones" operation was 2 bytes when it is in fact 4 bytes. This fixes the compilation failure for the builtin-bitops-1.c test. Sadly, it doesn't fix any of the other failures on the bfin port. Committed to the trunk. gcc/ * config/bfin/bfin.md (ones): Fix length computation.
-rw-r--r--gcc/config/bfin/bfin.md3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/bfin/bfin.md b/gcc/config/bfin/bfin.md
index 9b5ab07..c6b174d 100644
--- a/gcc/config/bfin/bfin.md
+++ b/gcc/config/bfin/bfin.md
@@ -1401,7 +1401,8 @@
(popcount:SI (match_operand:SI 1 "register_operand" "d"))))]
""
"%h0 = ONES %1;"
- [(set_attr "type" "alu0")])
+ [(set_attr "type" "alu0")
+ (set_attr "length" "4")])
(define_expand "popcountsi2"
[(set (match_dup 2)