[LLVMdev] Is shortening a load a bug?
Quentin Colombet
qcolombet at apple.com
Fri Sep 12 09:14:55 PDT 2014
On Sep 11, 2014, at 9:10 PM, Reid Kleckner <rnk at google.com> wrote:
> On Thu, Sep 11, 2014 at 5:17 PM, bagel <bagel99 at gmail.com> wrote:
> The phrase "As long as loading an i8 is legal" is the whole point. What if it isn't? How do I specify that (should of specifying the load as volatile, which is overkill)? As an author of a front end, I want to know what the contract is when I say load 32-bits? When I say load 32-bits I mean load 32-bits.
>
> I think it's a bug because there is no good way do avoid it and it breaks device drivers.
>
> This sounds like the *exact* use case for volatile, where the load is observable in some way other than the result that it is used for. If i8 is a legal type for the rest of your ISA, then this should be a volatile load.
I agree with Reid.
You should use volatile. Loading a i8 is legal in the ISA.
-Quentin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140912/94acf82b/attachment.html>
More information about the llvm-dev
mailing list