<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">
Hi all,
<div class=""><br class="">
</div>
<div class="">I've attached an updated version of the diagram I presented at the EuroLLVM round table. I think the overall reaction to showing a roadmap for upstreaming our current work was fairly positive, and the diagram is color coded to show the parts I
 expect to require more discussion.</div>
<div class=""><br class="">
</div>
<div class="">Robin Kruppe has managed to find a way to use the scalable vector type for the latest incarnation of the RISC-V V extension without needing to change vscale at runtime, so that has been completely removed from the proposal.</div>
<div class=""><br class="">
</div>
<div class="">Discussion at the roundtable and on the main type patch (<a href="https://reviews.llvm.org/D32530" class="">https://reviews.llvm.org/D32530</a>) turned towards the initial restrictions and implications, with a couple major decisions being taken:</div>
<div class=""><br class="">
</div>
<div class="">  1. We can only use a 'zeroinitializer' for a shufflevector mask in the short term, which allows for splats. Additional types of shuffles will be discussed later, and I need to produce a list of canonical shuffles in IR using 'stepvector' and
 'vscale'. Those will initially be represented as intrinsics so can't be used as part of a constant mask. This allows us to make reasonable progress on supporting SVE, since most loops that LoopVectorize currently handles don't require other shuffle types.</div>
<div class=""><br class="">
</div>
<div class="">  2. For scalable vectors, 'insertelement' and 'extractelement' will not check the index against the minimum number of lanes; if an index is constructed that could be out of range at runtime you will not get an undef value in IR, but implementation-defined
 behaviour at runtime.</div>
<div class=""><br class="">
</div>
<div class="">Any feedback on these decisions is welcome.</div>
<div class=""><br class="">
</div>
<div class="">-Graham</div>
<div class=""><br class="">
</div>
<div class=""><img apple-inline="yes" id="B3010F50-1A10-40C0-BF98-6CB730D821C8" src="cid:8F527004-41F0-464E-AD93-672A3FCAB1D3@manchester.arm.com" class=""></div>
</body>
</html>