public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel
@ 2020-05-27 5:00 zsojka at seznam dot cz
2020-05-27 8:07 ` [Bug target/95355] " rguenth at gcc dot gnu.org
` (9 more replies)
0 siblings, 10 replies; 11+ messages in thread
From: zsojka at seznam dot cz @ 2020-05-27 5:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
Bug ID: 95355
Summary: [11 Regression] Assembler messages: Error: operand
size mismatch for `vpmovzxbd' with -masm=intel
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: assemble-failure
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: zsojka at seznam dot cz
Target Milestone: ---
Host: x86_64-pc-linux-gnu
Target: x86_64-pc-linux-gnu
Created attachment 48614
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48614&action=edit
reduced testcase
Compiler output:
$ x86_64-pc-linux-gnu-gcc -O -fno-tree-dominator-opts -fno-tree-fre
-ftree-slp-vectorize -fno-tree-ter -mavx512dq -masm=intel testcase.c
/tmp/cc4ZYLWX.s: Assembler messages:
/tmp/cc4ZYLWX.s:27: Error: operand size mismatch for `vpmovzxbd'
$ x86_64-pc-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest-amd64/bin/x86_64-pc-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-r11-648-20200526221715-gbc48456d085-checking-yes-rtl-df-extra-nobootstrap-amd64/bin/../libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra
--disable-bootstrap --with-cloog --with-ppl --with-isl
--build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu
--target=x86_64-pc-linux-gnu --with-ld=/usr/bin/x86_64-pc-linux-gnu-ld
--with-as=/usr/bin/x86_64-pc-linux-gnu-as --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-r11-648-20200526221715-gbc48456d085-checking-yes-rtl-df-extra-nobootstrap-amd64
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.0.0 20200526 (experimental) (GCC)
The offending instruction is:
vpmovzxbd zmm0, QWORD PTR [rsp+32]
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
@ 2020-05-27 8:07 ` rguenth at gcc dot gnu.org
2020-05-27 8:40 ` [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa marxin at gcc dot gnu.org
` (8 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-05-27 8:07 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |11.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
2020-05-27 8:07 ` [Bug target/95355] " rguenth at gcc dot gnu.org
@ 2020-05-27 8:40 ` marxin at gcc dot gnu.org
2020-05-27 10:59 ` ubizjak at gmail dot com
` (7 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-05-27 8:40 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |marxin at gcc dot gnu.org,
| |uros at gcc dot gnu.org
Status|UNCONFIRMED |NEW
Last reconfirmed| |2020-05-27
Ever confirmed|0 |1
Summary|[11 Regression] Assembler |[11 Regression] Assembler
|messages: Error: operand |messages: Error: operand
|size mismatch for |size mismatch for
|`vpmovzxbd' with |`vpmovzxbd' with
|-masm=intel |-masm=intel since
| |r11-485-gf6e40195ec3d3b402a
| |5f6c58dbf359479bc4cbfa
Priority|P3 |P1
--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
2020-05-27 8:07 ` [Bug target/95355] " rguenth at gcc dot gnu.org
2020-05-27 8:40 ` [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa marxin at gcc dot gnu.org
@ 2020-05-27 10:59 ` ubizjak at gmail dot com
2020-05-27 19:04 ` cvs-commit at gcc dot gnu.org
` (6 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2020-05-27 10:59 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> ---
This is pre-exsisting problem.
There are a couple of wrong %q modifiers in vpmov* insn templates:
--cut here--
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index fde65391d7d..1cf1b8cea3b 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -17559,7 +17559,7 @@
(any_extend:V16SI
(match_operand:V16QI 1 "nonimmediate_operand" "vm")))]
"TARGET_AVX512F"
- "vpmov<extsuffix>bd\t{%1, %0<mask_operand2>|%0<mask_operand2>, %q1}"
+ "vpmov<extsuffix>bd\t{%1, %0<mask_operand2>|%0<mask_operand2>, %1}"
[(set_attr "type" "ssemov")
(set_attr "prefix" "evex")
(set_attr "mode" "XI")])
@@ -17935,7 +17935,7 @@
(any_extend:V8DI
(match_operand:V8HI 1 "nonimmediate_operand" "vm")))]
"TARGET_AVX512F"
- "vpmov<extsuffix>wq\t{%1, %0<mask_operand2>|%0<mask_operand2>, %q1}"
+ "vpmov<extsuffix>wq\t{%1, %0<mask_operand2>|%0<mask_operand2>, %1}"
[(set_attr "type" "ssemov")
(set_attr "prefix" "evex")
(set_attr "mode" "XI")])
--cut here--
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (2 preceding siblings ...)
2020-05-27 10:59 ` ubizjak at gmail dot com
@ 2020-05-27 19:04 ` cvs-commit at gcc dot gnu.org
2020-05-28 11:57 ` cvs-commit at gcc dot gnu.org
` (5 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-05-27 19:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:
https://gcc.gnu.org/g:7d014acc1ea263df7ed44aa6cb7f75bb8e512aed
commit r11-669-g7d014acc1ea263df7ed44aa6cb7f75bb8e512aed
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Wed May 27 21:02:51 2020 +0200
i386: Remove %q modifier from two pmov insn templates [PR95355]
2020-05-27 Uroš Bizjak <ubizjak@gmail.com>
gcc/ChangeLog:
PR target/95355
* config/i386/sse.md
(<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>):
Remove %q operand modifier from insn template.
(avx512f_<code>v8hiv8di2<mask_name>): Ditto.
gcc/testsuite/ChangeLog:
PR target/95355
* gcc.target/i386/pr95355.c: New test.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (3 preceding siblings ...)
2020-05-27 19:04 ` cvs-commit at gcc dot gnu.org
@ 2020-05-28 11:57 ` cvs-commit at gcc dot gnu.org
2020-05-29 10:11 ` marxin at gcc dot gnu.org
` (4 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-05-28 11:57 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:
https://gcc.gnu.org/g:31d827e98ab32060ef522fa5f3e42c1175e1a439
commit r10-8198-g31d827e98ab32060ef522fa5f3e42c1175e1a439
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Thu May 28 13:56:54 2020 +0200
i386: Remove %q modifier from two pmov insn templates [PR95355]
2020-05-28 Uroš Bizjak <ubizjak@gmail.com>
gcc/ChangeLog:
PR target/95355
* config/i386/sse.md
(<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>):
Remove %q operand modifier from insn template.
(avx512f_<code>v8hiv8di2<mask_name>): Ditto.
gcc/testsuite/ChangeLog:
PR target/95355
* gcc.target/i386/pr95355.c: New test.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (4 preceding siblings ...)
2020-05-28 11:57 ` cvs-commit at gcc dot gnu.org
@ 2020-05-29 10:11 ` marxin at gcc dot gnu.org
2020-06-30 14:00 ` tkoenig at gcc dot gnu.org
` (3 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-05-29 10:11 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
Can the bug be marked as resolved?
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (5 preceding siblings ...)
2020-05-29 10:11 ` marxin at gcc dot gnu.org
@ 2020-06-30 14:00 ` tkoenig at gcc dot gnu.org
2020-07-15 19:30 ` cvs-commit at gcc dot gnu.org
` (2 subsequent siblings)
9 siblings, 0 replies; 11+ messages in thread
From: tkoenig at gcc dot gnu.org @ 2020-06-30 14:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
Thomas Koenig <tkoenig at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |tkoenig at gcc dot gnu.org
--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Thomas Kथà¤nig <tkoenig@gcc.gnu.org>:
https://gcc.gnu.org/g:5958b926dcc3332aec0a2e34653c4394d2613401
commit r11-1729-g5958b926dcc3332aec0a2e34653c4394d2613401
Author: Thomas Koenig <tkoenig@gcc.gnu.org>
Date: Tue Jun 30 13:01:36 2020 +0200
Use CHARACTER(kind) string for calculating the type hash.
This regression came about because of a change in the way
types are displayed in error messages. The character
representation is also used to calculate the hashes for
our types, so this patch restores the old behavior if
we are indeed calculating a hash.
The test case also checks for the specific hash value because
changing that would be an ABI change, which we should not
be doing unintentionally.
gcc/fortran/ChangeLog:
2020-06-30 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/95355
* gfortran.h (gfc_typename): Add optional argument for_hash.
* misc.c (gfc_typename): When for_hash is true, just retur
CHARACTER(kind).
* class.c (gfc_intrinsic_hash_value): Call gfc_typename with
for_hash = true.
--- Comment #7 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
(In reply to CVS Commits from comment #6)
> The master branch has been updated by Thomas Kथà¤nig <tkoenig@gcc.gnu.org>:
That last commit was for PR 95366.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (6 preceding siblings ...)
2020-06-30 14:00 ` tkoenig at gcc dot gnu.org
@ 2020-07-15 19:30 ` cvs-commit at gcc dot gnu.org
2020-07-15 19:59 ` ubizjak at gmail dot com
2020-07-15 20:01 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-07-15 19:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:
https://gcc.gnu.org/g:6c2848ad02feef5ac094d1158be3861819b3bb49
commit r11-2140-g6c2848ad02feef5ac094d1158be3861819b3bb49
Author: Uros Bizjak <ubizjak@gmail.com>
Date: Wed Jul 15 21:27:00 2020 +0200
i386: Introduce peephole2 to use flags from CMPXCHG more [PR96189]
CMPXCHG instruction sets ZF flag if the values in the destination operand
and EAX register are equal; otherwise the ZF flag is cleared and value
from destination operand is loaded to EAX. Following assembly:
movl %esi, %eax
lock cmpxchgl %edx, (%rdi)
cmpl %esi, %eax
sete %al
can be optimized by removing the unneeded comparison, since set ZF flag
signals that no update to EAX happened.
2020-15-07 Uroš Bizjak <ubizjak@gmail.com>
gcc/ChangeLog:
PR target/95355
* config/i386/sync.md
(peephole2 to remove unneded compare after CMPXCHG): New pattern.
gcc/testsuite/ChangeLog:
PR target/95355
* gcc.target/i386/pr96189.c: New test.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (7 preceding siblings ...)
2020-07-15 19:30 ` cvs-commit at gcc dot gnu.org
@ 2020-07-15 19:59 ` ubizjak at gmail dot com
2020-07-15 20:01 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2020-07-15 19:59 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
--- Comment #9 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to CVS Commits from comment #8)
> The master branch has been updated by Uros Bizjak <uros@gcc.gnu.org>:
Bah. Wrong PR reference, should be PR96189.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
` (8 preceding siblings ...)
2020-07-15 19:59 ` ubizjak at gmail dot com
@ 2020-07-15 20:01 ` ubizjak at gmail dot com
9 siblings, 0 replies; 11+ messages in thread
From: ubizjak at gmail dot com @ 2020-07-15 20:01 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95355
Uroš Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|11.0 |10.2
Resolution|--- |FIXED
Status|NEW |RESOLVED
--- Comment #10 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Martin Liška from comment #5)
> Can the bug be marked as resolved?
Yes, this particular problem is fixed for gcc-10.2+.
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2020-07-15 20:01 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-27 5:00 [Bug target/95355] New: [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel zsojka at seznam dot cz
2020-05-27 8:07 ` [Bug target/95355] " rguenth at gcc dot gnu.org
2020-05-27 8:40 ` [Bug target/95355] [11 Regression] Assembler messages: Error: operand size mismatch for `vpmovzxbd' with -masm=intel since r11-485-gf6e40195ec3d3b402a5f6c58dbf359479bc4cbfa marxin at gcc dot gnu.org
2020-05-27 10:59 ` ubizjak at gmail dot com
2020-05-27 19:04 ` cvs-commit at gcc dot gnu.org
2020-05-28 11:57 ` cvs-commit at gcc dot gnu.org
2020-05-29 10:11 ` marxin at gcc dot gnu.org
2020-06-30 14:00 ` tkoenig at gcc dot gnu.org
2020-07-15 19:30 ` cvs-commit at gcc dot gnu.org
2020-07-15 19:59 ` ubizjak at gmail dot com
2020-07-15 20:01 ` ubizjak at gmail dot com
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).