* config/i386/i386.md: Missing file from my previous commit.
From-SVN: r255019
This commit is contained in:
parent
826eccc6fd
commit
ffb41aab7a
2 changed files with 22 additions and 16 deletions
|
@ -1,3 +1,10 @@
|
|||
2017-11-21 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/i386.md (*bswap<mode>2_movbe): Add
|
||||
integer suffix to movbe mnemonic.
|
||||
(*bswaphi2_movbe): Ditto.
|
||||
(bswaphi_lowpart): Merge with *bswaphi_lowpart_1.
|
||||
|
||||
2017-11-21 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/83045
|
||||
|
|
|
@ -14074,8 +14074,8 @@
|
|||
&& !(MEM_P (operands[0]) && MEM_P (operands[1]))"
|
||||
"@
|
||||
bswap\t%0
|
||||
movbe\t{%1, %0|%0, %1}
|
||||
movbe\t{%1, %0|%0, %1}"
|
||||
movbe{<imodesuffix>}\t{%1, %0|%0, %1}
|
||||
movbe{<imodesuffix>}\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "bitmanip,imov,imov")
|
||||
(set_attr "modrm" "0,1,1")
|
||||
(set_attr "prefix_0f" "*,1,1")
|
||||
|
@ -14103,8 +14103,8 @@
|
|||
&& !(MEM_P (operands[0]) && MEM_P (operands[1]))"
|
||||
"@
|
||||
xchg{b}\t{%h0, %b0|%b0, %h0}
|
||||
movbe\t{%1, %0|%0, %1}
|
||||
movbe\t{%1, %0|%0, %1}"
|
||||
movbe{w}\t{%1, %0|%0, %1}
|
||||
movbe{w}\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "imov")
|
||||
(set_attr "modrm" "*,1,1")
|
||||
(set_attr "prefix_0f" "*,1,1")
|
||||
|
@ -14124,26 +14124,25 @@
|
|||
[(parallel [(set (match_dup 0) (rotate:HI (match_dup 0) (const_int 8)))
|
||||
(clobber (reg:CC FLAGS_REG))])])
|
||||
|
||||
(define_insn "*bswaphi_lowpart_1"
|
||||
(define_insn "bswaphi_lowpart"
|
||||
[(set (strict_low_part (match_operand:HI 0 "register_operand" "+Q,r"))
|
||||
(bswap:HI (match_dup 0)))
|
||||
(clobber (reg:CC FLAGS_REG))]
|
||||
"TARGET_USE_XCHGB || optimize_function_for_size_p (cfun)"
|
||||
""
|
||||
"@
|
||||
xchg{b}\t{%h0, %b0|%b0, %h0}
|
||||
rol{w}\t{$8, %0|%0, 8}"
|
||||
[(set_attr "length" "2,4")
|
||||
[(set (attr "preferred_for_size")
|
||||
(cond [(eq_attr "alternative" "0")
|
||||
(symbol_ref "true")]
|
||||
(symbol_ref "false")))
|
||||
(set (attr "preferred_for_speed")
|
||||
(cond [(eq_attr "alternative" "0")
|
||||
(symbol_ref "TARGET_USE_XCHGB")]
|
||||
(symbol_ref "!TARGET_USE_XCHGB")))
|
||||
(set_attr "length" "2,4")
|
||||
(set_attr "mode" "QI,HI")])
|
||||
|
||||
(define_insn "bswaphi_lowpart"
|
||||
[(set (strict_low_part (match_operand:HI 0 "register_operand" "+r"))
|
||||
(bswap:HI (match_dup 0)))
|
||||
(clobber (reg:CC FLAGS_REG))]
|
||||
""
|
||||
"rol{w}\t{$8, %0|%0, 8}"
|
||||
[(set_attr "length" "4")
|
||||
(set_attr "mode" "HI")])
|
||||
|
||||
(define_expand "paritydi2"
|
||||
[(set (match_operand:DI 0 "register_operand")
|
||||
(parity:DI (match_operand:DI 1 "register_operand")))]
|
||||
|
|
Loading…
Add table
Reference in a new issue