On Thu, Jul 19, 2012 at 11:23:09AM +0200, Uros Bizjak wrote:
> >> You have a mnemonic clash here. prefetchw is not good name for a new
> >> instruction, it clashes with existing 3dnow name. Intel will need to
> >> fix the spec, you probably won't be able to change prefetchw encoding
> >> in binutils.
> >
> > From what I understand, Intel is using the same encoding of that insn as
> > 3dNOW!, so there is no clash, just the same insn is now enabled by two ISAs
> > (3dNOW! and this new CPUID prfchw bit).
> 
> I see. Then please review prefetch changes to not change existing
> functionality (i.e. -m3dnow should work as now, while -m3dnow -mprfchw
> can emit new instructions everywhere). However, do not change existing
> mm3dnow.h header.

I think it is fine to change existing mm3dnow.h header, but not in the way
it has been changed in the patch.  The thing is that unlike the newly added
intrinsics headers, mm3dnow.h is still publicly includable header, and just
including that header should work properly, so mm3dnow.h has to include
prftchwintrin.h, which should be allowed to be included from x86intrin.h
as well as mm3dnow.h, and that header should have guards, so that if both
x86intrin.h is included and mm3dnow.h too (the latter first),
prftchwintrin.h isn't included in twice.

        Jakub

Reply via email to