[PATCH] D81517: Extend or truncate __ptr32/__ptr64 pointers when dereferenced.

Hans Wennborg via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 10 07:08:07 PDT 2020


hans added a comment.

In D81517#2084827 <https://reviews.llvm.org/D81517#2084827>, @JohnReagan wrote:

> Thanks for tackling this.  Again, comparing this to what I have on my proprietary system with dual sized pointers, I have some observations (and some confusions on my part I'm sure)
>
> For 32-bit targets, can you even talk about ptr64?  My old 32-bit platforms don't allow it at all.  However, your custom lowering for 32-bit targets seems to imply that you want to support ptr64 containers on 32-bit platforms by always truncating them.  Or is the model that a 32-bit target would simply not use those two address spaces and therefore not generate the size/zero extension?


It's following MSVC, whose behaviour can be observed here: https://godbolt.org/z/uNwjMW


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D81517/new/

https://reviews.llvm.org/D81517





More information about the llvm-commits mailing list