<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><span class="vcard"><a class="email" href="mailto:listmail@philipreames.com" title="listmail@philipreames.com">listmail@philipreames.com</a>
</span> changed
<a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [SCEV] After 14d8f1546a0, via SCEV, Assertion failed: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file llvm/include/llvm/Support/Casting.h, line 269."
href="https://bugs.llvm.org/show_bug.cgi?id=51680">bug 51680</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>NEW
</td>
<td>RESOLVED
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>---
</td>
<td>FIXED
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [SCEV] After 14d8f1546a0, via SCEV, Assertion failed: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file llvm/include/llvm/Support/Casting.h, line 269."
href="https://bugs.llvm.org/show_bug.cgi?id=51680#c4">Comment # 4</a>
on <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - [SCEV] After 14d8f1546a0, via SCEV, Assertion failed: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file llvm/include/llvm/Support/Casting.h, line 269."
href="https://bugs.llvm.org/show_bug.cgi?id=51680">bug 51680</a>
from <span class="vcard"><a class="email" href="mailto:listmail@philipreames.com" title="listmail@philipreames.com">listmail@philipreames.com</a>
</span></b>
<pre>Should be fixed with:
commit 9b45fd909ffa754acbb4e927bc2d55c7ab0d4e3f (HEAD -> main, origin/main)
Author: Philip Reames <<a href="mailto:listmail@philipreames.com">listmail@philipreames.com</a>>
Date: Tue Aug 31 09:17:36 2021 -0700
[AlignFromAssume] Bailout w/non-constant alignments (pr51680)
This is a bailout for pr51680. This pass appears to assume that the
alignment operand to an align tag on an assume bundle is constant. This
doesn't appear to be required anywhere, and clang happily generates
non-constant alignments for cases such as this case taken from the bug report:
// clang -cc1 -triple powerpc64-- -S -O1 opal_pci-min.c
extern int a[];
long *b;
long c;
void *d(long, int *, int, long, long, long)
__attribute__((__alloc_align__(6)));
void e() {
b = d(c, a, 0, 0, 5, c);
b[0] = 0;
}
This was exposed by a SCEV change which allowed a non-constant alignment to
reach further into the pass' code. We could generalize the pass, but for now,
let's fix the crash.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>