This is an archive of the discontinued LLVM Phabricator instance.

Fix jumptable with large code model
AbandonedPublic

Authored by artagnon on Aug 7 2016, 4:25 PM.

Details

Summary

As the test shows, a simple switch used to emit the undesirable
"movslq (%rax,%rdi,4), %rsi" jumps when -code-model=Large.
Emit EK_BlockAddress jumps instead.

Diff Detail

Event Timeline

artagnon updated this revision to Diff 67106.Aug 7 2016, 4:25 PM
artagnon retitled this revision from to Fix jumptable with large code model.
artagnon updated this object.
artagnon added reviewers: eli.friedman, lhames, joerg.
artagnon added a subscriber: llvm-commits.

The file was auto-formatted via clang-format on save, via Atom. Sorry about the noise.

joerg requested changes to this revision.Nov 19 2016, 3:48 PM
joerg edited edge metadata.

The diff is completely unreviewable in the current form. It is also the wrong approach.

https://reviews.llvm.org/D26779 should be reasonable easy to adapt to x86.

This revision now requires changes to proceed.Nov 19 2016, 3:48 PM
artagnon abandoned this revision.Nov 27 2022, 5:12 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 27 2022, 5:12 AM