This is an archive of the discontinued LLVM Phabricator instance.

[mips] Work around inconsistency in llvm-mc's placement of fixup markers
ClosedPublic

Authored by dsanders on May 23 2014, 3:08 AM.

Details

Summary

Add a second fixup table to MipsAsmBackend::getFixupKindInfo() to correctly
position llvm-mc's fixup placeholders for big-endian.

See PR19836 for full details of the issue. To summarize, the fixup placeholders
do not account for endianness properly and the implementations of
getFixupKindInfo() for each target are measuring MCFixupKindInfo.TargetOffset
from different ends of the instruction encoding to compensate.

Diff Detail

Event Timeline

dsanders updated this revision to Diff 9745.May 23 2014, 3:08 AM
dsanders retitled this revision from to [mips] Work around inconsistency in llvm-mc's placement of fixup markers.
dsanders updated this object.
dsanders edited the test plan for this revision. (Show Details)
vmedic accepted this revision.May 23 2014, 5:55 AM
vmedic edited edge metadata.

LGTM

This revision is now accepted and ready to land.May 23 2014, 5:55 AM
dsanders closed this revision.May 23 2014, 6:42 AM