[llvm-commits] [llvm] r116722 - in /llvm/trunk: lib/Analysis/TypeBasedAliasAnalysis.cpp test/Analysis/TypeBasedAliasAnalysis/aliastest.ll
Dan Gohman
gohman at apple.com
Mon Oct 18 11:17:47 PDT 2010
Author: djg
Date: Mon Oct 18 13:17:47 2010
New Revision: 116722
URL: http://llvm.org/viewvc/llvm-project?rev=116722&view=rev
Log:
Make TypeBasedAliasAnalysis default to doing nothing, with a command-line
option to enable it.
Modified:
llvm/trunk/lib/Analysis/TypeBasedAliasAnalysis.cpp
llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/aliastest.ll
Modified: llvm/trunk/lib/Analysis/TypeBasedAliasAnalysis.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/TypeBasedAliasAnalysis.cpp?rev=116722&r1=116721&r2=116722&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/TypeBasedAliasAnalysis.cpp (original)
+++ llvm/trunk/lib/Analysis/TypeBasedAliasAnalysis.cpp Mon Oct 18 13:17:47 2010
@@ -32,8 +32,12 @@
#include "llvm/Module.h"
#include "llvm/Metadata.h"
#include "llvm/Pass.h"
+#include "llvm/Support/CommandLine.h"
using namespace llvm;
+// For testing purposes, enable TBAA only via a special option.
+static cl::opt<bool> EnableTBAA("enable-tbaa");
+
namespace {
/// TBAANode - This is a simple wrapper around an MDNode which provides a
/// higher-level interface by hiding the details of how alias analysis
@@ -122,6 +126,9 @@
AliasAnalysis::AliasResult
TypeBasedAliasAnalysis::alias(const Location &LocA,
const Location &LocB) {
+ if (!EnableTBAA)
+ return AliasAnalysis::alias(LocA, LocB);
+
// Get the attached MDNodes. If either value lacks a tbaa MDNode, we must
// be conservative.
const MDNode *AM = LocA.TBAATag;
@@ -168,6 +175,9 @@
}
bool TypeBasedAliasAnalysis::pointsToConstantMemory(const Location &Loc) {
+ if (!EnableTBAA)
+ return AliasAnalysis::pointsToConstantMemory(Loc);
+
const MDNode *M = Loc.TBAATag;
if (!M) return false;
Modified: llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/aliastest.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/aliastest.ll?rev=116722&r1=116721&r2=116722&view=diff
==============================================================================
--- llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/aliastest.ll (original)
+++ llvm/trunk/test/Analysis/TypeBasedAliasAnalysis/aliastest.ll Mon Oct 18 13:17:47 2010
@@ -1,4 +1,4 @@
-; RUN: opt < %s -basicaa -tbaa -gvn -S | FileCheck %s
+; RUN: opt < %s -enable-tbaa -basicaa -tbaa -gvn -S | FileCheck %s
; CHECK: @test0_yes
; CHECK: add i8 %x, %x
More information about the llvm-commits
mailing list