This is an archive of the discontinued LLVM Phabricator instance.

[GlobalISel][X86] G_FCONSTANT support.
ClosedPublic

Authored by igorb on Sep 12 2017, 2:33 AM.

Details

Summary

G_FCONSTANT support, port the implementation from X86FastIsel.

Diff Detail

Repository
rL LLVM

Event Timeline

igorb created this revision.Sep 12 2017, 2:33 AM
delena added inline comments.Sep 12 2017, 5:23 AM
lib/Target/X86/X86InstructionSelector.cpp
1204 ↗(On Diff #114787)

should it be "const LLT&" ?

1224 ↗(On Diff #114787)

Does the Large CM mean that the target is 64 bit? Please add "assert" here.

1250 ↗(On Diff #114787)

I do not really understand what happens if you exit here. Could you, please, add some comments?

igorb updated this revision to Diff 114828.Sep 12 2017, 7:07 AM
igorb marked 2 inline comments as done.
  • fix according to comments
delena added inline comments.Sep 13 2017, 3:25 AM
lib/Target/X86/X86InstructionSelector.cpp
1220 ↗(On Diff #114828)

Can PCIBase remain 0? According to the code, you calculate PCIBase for the Large model, but do not use it.

1222 ↗(On Diff #114828)

nullptr

igorb updated this revision to Diff 115411.Sep 15 2017, 8:57 AM
igorb marked an inline comment as done.

fix according to comments.
32bit PIC mode not supported yet.

Thanks for the review!

lib/Target/X86/X86InstructionSelector.cpp
1220 ↗(On Diff #114828)

Yes , in 32bit mode.

delena accepted this revision.Sep 15 2017, 10:34 AM
This revision is now accepted and ready to land.Sep 15 2017, 10:34 AM
This revision was automatically updated to reflect the committed changes.