[Bug middle-end/77270] New: Flag -mprftchw is shared with 3dnow for -march=k8
nightstrike at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Aug 16 16:40:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77270
Bug ID: 77270
Summary: Flag -mprftchw is shared with 3dnow for -march=k8
Product: gcc
Version: 6.1.0
URL: https://gcc.gnu.org/ml/gcc/2016-05/msg00000.html
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: nightstrike at gmail dot com
CC: ubizjak at gmail dot com, venkataramanan.kumar at amd dot com
Target Milestone: ---
See https://gcc.gnu.org/ml/gcc/2016-05/msg00000.html
Using -march=native on a k8 platform does not add -mprfchw to the options list,
while using -march=k8 on a different platform does add the switch.
From Venkataramanan:
> 3DNow! instruction extensions = true
> 3DNow! instructions = true
It has 3Dnow support. "prefetchw" is available with 3dnow.
> misaligned SSE mode = false
> 3DNow! PREFETCH/PREFETCHW instructions = false
It does not have 3DNowprefetch enabling ISA flag -mprftchw is not correct for
-march=k8.
> OS visible workaround = false
> instruction based sampling = false
I think we need to file bug for this. Need to check with Uros why the flag
-mprfchw is shared with 3dnow.
To work around this issue you can use -mno-prfchw when building with -march=k8.
More information about the Gcc-bugs
mailing list