[PATCH] D12033: [BasicAliasAnalysis] Do not check ModRef table for intrinsics

Igor Laevsky via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 14 07:17:26 PDT 2015


igor-laevsky created this revision.
igor-laevsky added reviewers: majnemer, reames, hfinkel.
igor-laevsky added a subscriber: llvm-commits.
igor-laevsky set the repository for this revision to rL LLVM.

All possible ModRef behaviours can be completely represented using existing LLVM IR attributes. And since http://reviews.llvm.org/D11352 this attributes are emitted for intrinsics. There is no need to use separate ModRef table in the BasicAliasAnalysis.

This is step towards removal of the GET_INTRINSIC_MODREF_BEHAVIOR table.

Repository:
  rL LLVM

http://reviews.llvm.org/D12033

Files:
  lib/Analysis/BasicAliasAnalysis.cpp

Index: lib/Analysis/BasicAliasAnalysis.cpp
===================================================================
--- lib/Analysis/BasicAliasAnalysis.cpp
+++ lib/Analysis/BasicAliasAnalysis.cpp
@@ -532,13 +532,6 @@
   if (F->doesNotAccessMemory())
     return FMRB_DoesNotAccessMemory;
 
-  // For intrinsics, we can check the table.
-  if (Intrinsic::ID iid = F->getIntrinsicID()) {
-#define GET_INTRINSIC_MODREF_BEHAVIOR
-#include "llvm/IR/Intrinsics.gen"
-#undef GET_INTRINSIC_MODREF_BEHAVIOR
-  }
-
   FunctionModRefBehavior Min = FMRB_UnknownModRefBehavior;
 
   // If the function declares it only reads memory, go with that.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D12033.32153.patch
Type: text/x-patch
Size: 629 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150814/99e9501f/attachment.bin>


More information about the llvm-commits mailing list