[PATCH] D25204: Register Calling Convention, Clang changes

Alexey Bataev via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 5 06:46:41 PDT 2016


ABataev added inline comments.


> Type.h:1381
>      /// regparm and the calling convention.
> -    unsigned ExtInfo : 9;
> +    unsigned ExtInfo : 10;
>  

Erich, do you really need this? You don't increase number of required bits anymore, so this code must be restored

> Type.h:2909-2921
> +    // Feel free to rearrange or add bits, but if you go over 10,
>      // you'll need to adjust both the Bits field below and
>      // Type::FunctionTypeBitfields.
>  
>      //   |  CC  |noreturn|produces|regparm|
> -    //   |0 .. 3|   4    |    5   | 6 .. 8|
> +    //   |0 .. 4|   5    |    6   | 7 .. 9|
>      //

Also, you don't need these changes anymore

> MicrosoftMangle.cpp:434
> +
> +  if (auto FD = dyn_cast<FunctionDecl>(D))
> +    if (FD->getType()->castAs<FunctionType>()->getCallConv() ==

`auto*`

> CodeGenModule.cpp:686
>      assert(II && "Attempt to mangle unnamed decl.");
> -    Str = II->getName();
> +    const FunctionDecl *FD = dyn_cast<FunctionDecl>(ND);
> +

`const auto *FD`

> ABataev wrote in TargetInfo.cpp:1546-1548
> Seems to me this code is clang-formatted

I mean, did you try to reformat the whole `return` statement? It looks ugly

> rnk wrote in TargetInfo.cpp:3321
> variable naming

I believe the whole patch must be `clang-tide`d

https://reviews.llvm.org/D25204





More information about the cfe-commits mailing list