summaryrefslogtreecommitdiff
path: root/contrib/test_mklog.py
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2021-01-13 14:33:43 +0100
committerMartin Liska <mliska@suse.cz>2021-01-13 14:34:08 +0100
commita2d04f3d2c90155bea035d7527a49bc4a6a3397b (patch)
tree51bb36b5c9a4497f0703ad2ca4dcb53874099f3d /contrib/test_mklog.py
parent11cbea852b0ae2b0f17a9caeaf6344d689231c2f (diff)
downloadgcc-a2d04f3d2c90155bea035d7527a49bc4a6a3397b.tar.gz
mklog: support define_insn_and_split format
contrib/ChangeLog: * mklog.py: Parse also define_insn_and_split and similar directives in .md files. * test_mklog.py: Test.
Diffstat (limited to 'contrib/test_mklog.py')
-rwxr-xr-xcontrib/test_mklog.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/contrib/test_mklog.py b/contrib/test_mklog.py
index 344b7a2c771..7e95ec1a2ab 100755
--- a/contrib/test_mklog.py
+++ b/contrib/test_mklog.py
@@ -399,6 +399,44 @@ gcc/ChangeLog:
'''
+PATCH9 = '''\
+diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
+index 2a260c1cfbd..7f03fc491c3 100644
+--- a/gcc/config/i386/sse.md
++++ b/gcc/config/i386/sse.md
+@@ -17611,6 +17611,23 @@ (define_insn "avx2_<code>v16qiv16hi2<mask_name>"
+ (set_attr "prefix" "maybe_evex")
+ (set_attr "mode" "OI")])
+
++(define_insn_and_split "*avx2_zero_extendv16qiv16hi2_1"
++ [(set (match_operand:V32QI 0 "register_operand" "=v")
++ (vec_select:V32QI
++ (vec_concat:V64QI
++ (match_operand:V32QI 1 "nonimmediate_operand" "vm")
++ (match_operand:V32QI 2 "const0_operand" "C"))
++ (match_parallel 3 "pmovzx_parallel"
++ [(match_operand 4 "const_int_operand" "n")])))]
++ "TARGET_AVX2"
++ "#"
++ "&& reload_completed"
++ [(set (match_dup 0) (zero_extend:V16HI (match_dup 1)))]
++{
++ operands[0] = lowpart_subreg (V16HImode, operands[0], V32QImode);
++ operands[1] = lowpart_subreg (V16QImode, operands[1], V32QImode);
++})
++
+ (define_expand "<insn>v16qiv16hi2"
+ [(set (match_operand:V16HI 0 "register_operand")
+ (any_extend:V16HI
+'''
+
+EXPECTED9 = '''\
+gcc/ChangeLog:
+
+ * config/i386/sse.md (*avx2_zero_extendv16qiv16hi2_1):
+
+'''
+
class TestMklog(unittest.TestCase):
def test_macro_definition(self):
changelog = generate_changelog(PATCH1)
@@ -437,3 +475,7 @@ class TestMklog(unittest.TestCase):
def test_renaming(self):
changelog = generate_changelog(PATCH8)
assert changelog == EXPECTED8
+
+ def test_define_macro_parsing(self):
+ changelog = generate_changelog(PATCH9)
+ assert changelog == EXPECTED9