This is an archive of the discontinued LLVM Phabricator instance.

[X86][MMX] Improve handling of 64-bit MMX constants
ClosedPublic

Authored by RKSimon on Feb 22 2018, 5:43 AM.

Details

Summary

64-bit MMX constant generation usually ends up lowering into SSE instructions before being spilled/reloaded as a MMX type.

This patch bitcasts the constant to a double value to allow correct loading directly to the MMX register.

I've added MMX constant asm comment support to improve testing, it's better to always print the double values as hex constants as MMX is mainly an integer unit (and even with 3DNow! its just floats).

Diff Detail

Repository
rL LLVM

Event Timeline

RKSimon created this revision.Feb 22 2018, 5:43 AM
This revision is now accepted and ready to land.Mar 1 2018, 12:18 PM
This revision was automatically updated to reflect the committed changes.