This is an archive of the discontinued LLVM Phabricator instance.

Fix aliases to thumbfunc-based exprs to be thumbfunc
ClosedPublic

Authored by eugenis on Jan 18 2017, 3:59 PM.

Details

Summary

If F is a Thumb function symbol, and G = F + const, and G is a
function symbol, then G is Thumb. Because what else could it be?

This is how ControlFlowIntegrity emits jump tables - a function with inline asm that's a bunch of jump instructions, and a set of aliases inside that function. If a function is thumb, we want the aliases to be thumb as well.

Diff Detail

Repository
rL LLVM

Event Timeline

eugenis created this revision.Jan 18 2017, 3:59 PM
pcc accepted this revision.Jan 18 2017, 4:31 PM

LGTM

This revision is now accepted and ready to land.Jan 18 2017, 4:31 PM
This revision was automatically updated to reflect the committed changes.