akhuang added a comment.

I split off the backend changes into a separate patch -> 
https://reviews.llvm.org/D69639
The issue with passing 0 for a pointer should be fixed there.

@DarkShadow44 
Some of the differences come from the fact that we're implementing the mixed 
pointer sizes with three address spaces, which get printed out as 
`__ptr32_sptr`, `__ptr32_uptr`, and `__ptr64`. So they are intended but maybe 
also confusing.

> __ptr32_sptr doesn't exist and seems wrong

In this case it picks the address space __ptr32_sptr because it does sign 
extension by default.

> The __ptr32 part should be right of the asterisk

I think this happens because address spaces are attached to the pointee type 
and not the pointer.

> Why does PINT64 have PINT64 as type, but PINT32 not PINT32?

I'm not sure why this happens, but I can look into it later. It makes sense 
that PINT64 would work as it did before because on a 64-bit system adding 
__ptr64 doesn't do anything.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D66827



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to