[Attributor] Use must-be-executed-context in align deduction
authorHideto Ueno <uenoku.tokotoko@gmail.com>
Tue, 12 Nov 2019 06:36:49 +0000 (06:36 +0000)
committerHideto Ueno <uenoku.tokotoko@gmail.com>
Tue, 12 Nov 2019 06:41:19 +0000 (06:41 +0000)
commit88b04ef8327cdd45bd1e973ec98be5d71e7b8383
tree2a62275e4a68243c5539013f31f42becd7aaa29e
parent43ff63477256d584cf506dba0c222c28231b0ccc
[Attributor] Use must-be-executed-context in align deduction

Summary:
This patch introduces align attribute deduction for callsite argument, function argument, function returned and floating value based on must-be-executed-context.

Reviewers: jdoerfert, sstefan1

Reviewed By: jdoerfert

Subscribers: hiraditya, jfb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D69797
llvm/lib/Transforms/IPO/Attributor.cpp
llvm/test/Transforms/FunctionAttrs/align.ll
llvm/test/Transforms/FunctionAttrs/arg_nocapture.ll
llvm/test/Transforms/FunctionAttrs/arg_returned.ll
llvm/test/Transforms/FunctionAttrs/dereferenceable.ll
llvm/test/Transforms/FunctionAttrs/internal-noalias.ll
llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
llvm/test/Transforms/FunctionAttrs/nosync.ll
llvm/test/Transforms/FunctionAttrs/read_write_returned_arguments_scc.ll
llvm/test/Transforms/InferFunctionAttrs/dereferenceable.ll