This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/80833] 32-bit x86 causes store-forwarding stalls for int64_t -> xmm


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80833

--- Comment #3 from Peter Cordes <peter at cordes dot ca> ---
Atom's movd xmm->int is slower (lat=4, rtput=2) than its movd int->xmm (lat=3,
rtput=1), which is opposite of every other CPU (except Silvermont where they're
the same throughput but xmm->int is 1c slower).  So very likely store/reload is
the way to go for -mtune=atom, since store-forwarding is so amazingly fast (1c
latency).  But maybe with SSE4 pextrd, the code-size saving is worth it.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]