0061-Remove-unsupported-bext.w-in-gcc.patch 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. From 31a09167fdc4b53e618d3ac2639767bf5eb431f8 Mon Sep 17 00:00:00 2001
  2. From: LevyHsu <admin@levyhsu.com>
  3. Date: Fri, 16 Jul 2021 10:29:25 +0800
  4. Subject: [PATCH 61/61] Remove unsupported bext.w in gcc
  5. Followiing code was removed to prevent bextw being generated:
  6. (define_insn "*bextw"
  7. [(set (match_operand:DI 0 "register_operand" "=r")
  8. (and:DI
  9. (subreg:DI
  10. (lshiftrt:SI (match_operand:SI 1 "register_operand" "r")
  11. (match_operand:QI 2 "register_operand" "r")) 0)
  12. (const_int 1)))]
  13. "TARGET_64BIT && TARGET_ZBS"
  14. "bextw\t%0,%1,%2"
  15. [(set_attr "type" "bitmanip")])
  16. ---
  17. gcc/config/riscv/bitmanip.md | 11 -----------
  18. 1 file changed, 11 deletions(-)
  19. diff --git a/gcc/config/riscv/bitmanip.md b/gcc/config/riscv/bitmanip.md
  20. index 3026883fc0e..930549a90fc 100644
  21. --- a/gcc/config/riscv/bitmanip.md
  22. +++ b/gcc/config/riscv/bitmanip.md
  23. @@ -206,17 +206,6 @@
  24. "bexti\t%0,%1,%2"
  25. [(set_attr "type" "bitmanip")])
  26. -(define_insn "*bextw"
  27. - [(set (match_operand:DI 0 "register_operand" "=r")
  28. - (and:DI
  29. - (subreg:DI
  30. - (lshiftrt:SI (match_operand:SI 1 "register_operand" "r")
  31. - (match_operand:QI 2 "register_operand" "r")) 0)
  32. - (const_int 1)))]
  33. - "TARGET_64BIT && TARGET_ZBS"
  34. - "bextw\t%0,%1,%2"
  35. - [(set_attr "type" "bitmanip")])
  36. -
  37. ;;; ??? s[lr]o*
  38. (define_insn "rotrsi3"
  39. --
  40. 2.33.0