[llvm-dev] SROA and volatile memcpy/memset
Krzysztof Parzyszek via llvm-dev
llvm-dev at lists.llvm.org
Wed Nov 11 08:02:25 PST 2015
On 11/11/2015 9:57 AM, Hal Finkel wrote:
> ----- Original Message -----
>> From: "Krzysztof Parzyszek" <kparzysz at codeaurora.org>
>>
>> I'm not sure which part you are referring to. The "volatileness" of
>> the
>> structure in question does not place the same restrictions on how we
>> can
>> access it as it would be in the case of a device access. The broken
>> up
>> loads and stores are legal in the sense that they won't cause any
>> hardware issues, however they would take longer to execute because
>> the
>> resulting instructions would be marked as volatile and thus
>> "non-optimizable".
>
> How would TTI be used? DataLayout, for example, already has information on legal/preferred integer sizes. Would that help?
I was thinking about having some information about the preferred
treatment of volatile memory intrinsics. The problem in this case is
that the aggregate is a union, which would make it harder to decide how
the accesses should be formed.
-Krzysztof
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
More information about the llvm-dev
mailing list