HomePhabricator

[IR] Don't assume all functions are 4 byte aligned

Description

[IR] Don't assume all functions are 4 byte aligned

In some cases different alignments for function might be used to save
space e.g. thumb mode with -Oz will try to use 2 byte function
alignment. Similar patch that fixed this in other areas exists here
https://reviews.llvm.org/D46110

This was approved previously https://reviews.llvm.org/D55115 (r348215)
but when committed it caused failures on the sanitizer buildbots when
building llvm with clang (containing this patch). This is now fixed
because I've added a check to see if getting the parent module returns
null if it does then set the alignment to 0.

Differential Revision: https://reviews.llvm.org/D55115

Details

Committed
rsinghDec 7 2018, 12:34 AM
Differential Revision
D55115: [IR] Don't assume all functions are 4 byte aligned
Parents
rL348570: [PM] Port LoadStoreVectorizer to the new pass manager.
Branches
Unknown
Tags
Unknown