This is an archive of the discontinued LLVM Phabricator instance.

[COFF] Fix section name for constants larger than 64 bits on Windows
ClosedPublic

Authored by zsrkmyn on Aug 19 2019, 6:46 PM.

Details

Summary

APIntToHexString returns wrong value ("0000000000000000ffffffffffffffff")
for integer larger than 64 bits, and thus
TargetLoweringObjectFileCOFF::getSectionForConstant returns same section name
for all numbers larger than 64 bits. This patch tries to fix it.

Diff Detail

Repository
rL LLVM

Event Timeline

zsrkmyn created this revision.Aug 19 2019, 6:46 PM
Herald added a project: Restricted Project. · View Herald TranscriptAug 19 2019, 6:46 PM
MaskRay added inline comments.
llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
1602 ↗(On Diff #216035)

llvm::transform(HexString, ...)

rnk accepted this revision.Aug 21 2019, 1:44 PM

lgtm

This revision is now accepted and ready to land.Aug 21 2019, 1:44 PM
zsrkmyn updated this revision to Diff 216535.Aug 21 2019, 6:26 PM
zsrkmyn added a reviewer: MaskRay.
zsrkmyn marked an inline comment as done.Aug 21 2019, 6:30 PM

Changed according to MaskRay's comment.
BTW, I cannot commit the patch myself. Can someone help commit it? Thanks a lot!

MaskRay accepted this revision.Aug 21 2019, 6:44 PM

Will be love to do :)

This revision was automatically updated to reflect the committed changes.