[LLVMdev] Making GEP into vector illegal?
Chris Lattner
clattner at apple.com
Tue Oct 14 17:41:25 PDT 2008
On Oct 14, 2008, at 4:30 PM, Mike Stump wrote:
> On Oct 14, 2008, at 1:54 PM, Eli Friedman wrote:
>> Maybe... although note that with gcc vector intrinsics, this violates
>> strict aliasing. gcc does allow you to use a slightly more elaborate
>> workaround with a union, though.
>
> Hum what's your take on this then:
>
> /* The Intel API is flexible enough that we must allow aliasing with
> other
> vector types, and their scalar components. */
> /* APPLE LOCAL 4505813 */
> typedef long long __m64 __attribute__ ((__vector_size__ (8),
> __may_alias__));
This is actually completely different AFAIK, this allows things like:
((float*)&myvec4)[2]
which is exactly what the proposal wants to continue supporting in the
IR.
-Chris
More information about the llvm-dev
mailing list