Teach BasicAA about the LLVM IR rules that allow reading past the end of an object given sufficient alignment. Fixes PR12098.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151553 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eli Friedman
2012-02-27 20:46:07 +00:00
parent 9e2a79c287
commit 1680a24e53
3 changed files with 52 additions and 10 deletions

View File

@ -4,7 +4,7 @@
; RUN: opt < %s -basicaa -gvn -S | FileCheck %s
target datalayout = "E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128"
@B = global i16 8
@B = global i16 8, align 2
; CHECK: @test1
define i16 @test1(i32* %P) {