[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-12-05 Thread Amy Huang via Phabricator via cfe-commits
akhuang abandoned this revision. akhuang added a comment. I split this into two reviews-- the backend part is landed and the frontend part is at https://reviews.llvm.org/D71039. Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-10-30 Thread Amy Huang via Phabricator via cfe-commits
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

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-10-17 Thread Fabian Maurer via Phabricator via cfe-commits
DarkShadow44 added a comment. @akhuang Thanks for looking into this! I've found something else, I've written a small dumper to demonstrate. Pardon the long comment please. Program: typedef int* __ptr32 PINT32; typedef int* PINT64; struct s1 { PINT32 i32; PINT64 i64;

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-10-16 Thread Amy Huang via Phabricator via cfe-commits
akhuang added a comment. @DarkShadow44 Thanks for finding this bug! I haven't had time to look at this for a while but will start working on it soon. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D66827/new/ https://reviews.llvm.org/D66827

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-10-14 Thread Fabian Maurer via Phabricator via cfe-commits
DarkShadow44 added a comment. @akhuang Any update on this? I'd love to see this upstreamed. I'd offer to help, but I'm not well versed in clang. FWIW, I also found a small bug when using this patchset: void func1(void * __ptr32 test) { } int main() { func1(0); return 0;

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-09-04 Thread Amy Huang via Phabricator via cfe-commits
akhuang updated this revision to Diff 218795. akhuang added a comment. - Change existing tests so they still pass - Fix so that it parses all the __ptr32/64 attributes instead of just the last one Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-09-04 Thread David Majnemer via Phabricator via cfe-commits
majnemer added inline comments. Comment at: clang/lib/AST/MicrosoftMangle.cpp:1718 QualType PointeeType) { - if (PointersAre64Bit && - (PointeeType.isNull() || !PointeeType->isFunctionType())) + // Check if this

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-08-29 Thread Amy Huang via Phabricator via cfe-commits
akhuang marked 2 inline comments as done. akhuang added inline comments. Comment at: clang/lib/AST/MicrosoftMangle.cpp:1874 +case LangAS::ptr32_sptr: + Extra.mangleSourceName("_ASPtr32_sptr"); + break; rnk wrote: > Hm, we should actually mangle

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-08-29 Thread Amy Huang via Phabricator via cfe-commits
akhuang updated this revision to Diff 217940. akhuang marked 4 inline comments as done. akhuang added a comment. - Test that codegen adds the correct address spaces - Modify microsoft mangling to match microsoft mangling. - add comment for overloading Repository: rG LLVM Github Monorepo

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-08-27 Thread Reid Kleckner via Phabricator via cfe-commits
rnk added a comment. This change needs a clang CodeGen test to show that we generate IR with `__ptr32` / `__ptr64` in the correct places. We should already have some semantic tests, but we may need more. Comment at: clang/lib/AST/MicrosoftMangle.cpp:1874 +case

[PATCH] D66827: Add support for MS qualifiers __ptr32, __ptr64, __sptr, __uptr.

2019-08-27 Thread Amy Huang via Phabricator via cfe-commits
akhuang created this revision. akhuang added reviewers: rnk, rsmith. Herald added subscribers: llvm-commits, cfe-commits, erik.pilkington, hiraditya, nhaehnle, jvesely, jholewinski. Herald added projects: clang, LLVM. Previously, these qualifiers were being parsed but otherwise ignored. This