[LLVMdev] Adding masked vector load and store intrinsics

Demikhovsky, Elena elena.demikhovsky at intel.com
Sat Oct 25 04:30:35 PDT 2014


> The same problem exists with any potentially trapping instruction (e.g. all floating point computations).  The need for intrinsics goes way beyond loads and stores.

We definitely looking at them, but decided to start from load and store. All FP + gather/scatter are in our long term plan. It will be about 20 intrinsics. 
But step-by-step.

-  Elena


-----Original Message-----
From: dag at cray.com [mailto:dag at cray.com] 
Sent: Friday, October 24, 2014 19:49
To: Hal Finkel
Cc: Demikhovsky, Elena; llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] Adding masked vector load and store intrinsics

Hal Finkel <hfinkel at anl.gov> writes:

> For the loads, I'm must less sure. Why can't we represent the loads as 
> select(mask, load(addr), passthru)?

Because that does not specify the correct semantics.  This formulation expects the load to happen before the mask is applied.  The load could trap.  The operation needs to be presented as an atomic unit.

The same problem exists with any potentially trapping instruction (e.g. all floating point computations).  The need for intrinsics goes way beyond loads and stores.

                             -David
---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.





More information about the llvm-dev mailing list