mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-01 15:17:25 +00:00
r236894 caused PR23626 (Clang miscompiles webkit's base64 decoder), and was reverted in r237984. This reapplies the patch with an additional test case for PR23626 and the associated fix (both scales and offsets in the BasicAliasAnalysis::constantOffsetHeuristic should initially be zero). Patch by Nick White, thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241981 91177308-0d34-0410-b5e6-96231b3b80d8
18 lines
558 B
LLVM
18 lines
558 B
LLVM
; RUN: opt < %s -basicaa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
|
|
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
|
|
target triple = "x86_64-unknown-linux-gnu"
|
|
|
|
@c = external global i32
|
|
|
|
; CHECK-LABEL: f
|
|
; CHECK: PartialAlias: i32* %arrayidx, i32* %arrayidx6
|
|
define void @f() {
|
|
%idxprom = zext i32 undef to i64
|
|
%add4 = add i32 0, 1
|
|
%idxprom5 = zext i32 %add4 to i64
|
|
%arrayidx6 = getelementptr inbounds i32, i32* @c, i64 %idxprom5
|
|
%arrayidx = getelementptr inbounds i32, i32* @c, i64 %idxprom
|
|
ret void
|
|
}
|
|
|