This is an archive of the discontinued LLVM Phabricator instance.

[mips][microMIPS] Implement LWGP instruction
ClosedPublic

Authored by jkolek on Dec 13 2014, 9:33 AM.

Diff Detail

Repository
rL LLVM

Event Timeline

jkolek updated this revision to Diff 17258.Dec 13 2014, 9:33 AM
jkolek retitled this revision from to [mips][microMIPS] Implement LWGP instruction.
jkolek updated this object.
jkolek edited the test plan for this revision. (Show Details)
jkolek added reviewers: dsanders, sstankovic, vmedic.
jkolek added subscribers: Unknown Object (MLST), zoran.jovanovic, petarj.
jkolek updated this revision to Diff 18679.Jan 23 2015, 8:08 AM
jkolek updated this revision to Diff 18766.Jan 26 2015, 10:10 AM
sstankovic added inline comments.Jan 27 2015, 1:04 AM
lib/Target/Mips/AsmParser/MipsAsmParser.cpp
824 ↗(On Diff #18766)

This method is not used (if I comment it out, the tests still pass). I think that you also don't need MicroMipsMemGPAsmOperand parser match class.

1272 ↗(On Diff #18766)

You should additionally check that the instruction is not a store, because there is no 16-bit gp-relative store instruction. For example, for the following instruction

sw $3, 32($gp)

instead of emitting 32-bit store instruction, the 16-bit load is emitted. Please add this instruction to the tests.

jkolek updated this revision to Diff 18813.Jan 27 2015, 6:30 AM
jkolek updated this revision to Diff 18889.Jan 28 2015, 5:59 AM
sstankovic accepted this revision.Jan 28 2015, 7:58 AM
sstankovic edited edge metadata.
This revision is now accepted and ready to land.Jan 28 2015, 7:58 AM
This revision was automatically updated to reflect the committed changes.