Hello Uroš,
This simple patch fixes mode (to iterator) in
splitter for `not-xor' logic.
Bootstrapped & reg-tested on trunk.
Is it ok for trunk?
Is it ok for gcc-5-branch? (if tested accordingly)
(I have no idea how to reference to define_split in
ChangeLog entry)
gcc/
* gcc/config/i386/i386.md (define_split not/xor SWI1248x): Use
iterator instead of fixed modes..
--
Thanks, K
commit fc8c797375b4fc8fc155070ccfcca52497991c48
Author: Kirill Yukhin <[email protected]>
Date: Fri Sep 18 16:10:06 2015 +0300
AVX-512. Fix kxnor insn splits.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 7808705..f7230f0 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -8565,11 +8565,11 @@
(clobber (reg:CC FLAGS_REG))]
"TARGET_AVX512F && reload_completed"
[(parallel [(set (match_dup 0)
- (xor:HI (match_dup 0)
- (match_dup 1)))
+ (xor:SWI1248x (match_dup 0)
+ (match_dup 1)))
(clobber (reg:CC FLAGS_REG))])
(set (match_dup 0)
- (not:HI (match_dup 0)))])
+ (not:SWI1248x (match_dup 0)))])
;;There are kortrest[bdq] but no intrinsics for them.
;;We probably don't need to implement them.