[PATCH] llvm.noalias - Use noalias intrinsics when inlining (and update them when cloning metadata)

hfinkel at anl.gov hfinkel at anl.gov
Thu Apr 30 09:22:22 PDT 2015


Hi chandlerc, reames,

This is part of the series started by D9375, and have two related changes:

 1. When inlining a function, and cloning the alias scope metadata, we need to clone the corresponding metadata within the calls to llvm.noalias too.

 2. When inlining a function, instead of adding noalias metadata and alias.scope metadata (and doing the corresponding pointer-derivation and capturing analysis), add noalias metadata and use llvm.noalias intrinsics. This is more expressive (keeps the necessary dominance information), and is simpler (and faster).

http://reviews.llvm.org/D9400

Files:
  lib/Transforms/Utils/InlineFunction.cpp
  test/Transforms/Inline/noalias-calls.ll
  test/Transforms/Inline/noalias.ll
  test/Transforms/Inline/noalias2.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9400.24739.patch
Type: text/x-patch
Size: 25840 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150430/b07b7dbe/attachment.bin>


More information about the llvm-commits mailing list