This is an archive of the discontinued LLVM Phabricator instance.

[SystemZ] Bugfix in SystemZVectorConstantInfo
ClosedPublic

Authored by jonpa on Oct 14 2020, 5:49 AM.

Details

Summary

In order to correctly load an all-ones FP NaN value into a floating point register with a VGBM, the analyzed 32/64 FP bits must first be shifted left (into element 0 of the vector register).

SystemZVectorConstantInfo has so far relied on element replication which has bypassed the need to do this shift, but now it is clear that this must be done in order to handle NaNs.

Diff Detail

Event Timeline

jonpa created this revision.Oct 14 2020, 5:49 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 14 2020, 5:49 AM
jonpa requested review of this revision.Oct 14 2020, 5:49 AM
uweigand accepted this revision.Oct 14 2020, 6:12 AM

Strange that this wasn't noticed earlier. In any case, patch LGTM.

This revision is now accepted and ready to land.Oct 14 2020, 6:12 AM
This revision was automatically updated to reflect the committed changes.