2013/11/5 Reid Kleckner <[email protected]>:
>
>   LGTM
>
>
> ================
> Comment at: lib/AST/MicrosoftMangle.cpp:1849
> @@ -1848,2 +1848,3 @@
>                                        MicrosoftCXXNameMangler &Mangler,
>                                        raw_ostream &Out) {
> +  if (!Adjustment.Virtual.isEmpty()) {
> ----------------
> Timur Iskhodzhanov wrote:
>> Reid Kleckner wrote:
>> > This is complicated enough that it deserves it's own BNF comment with 
>> > portions of the mangleFunctionClass() BNF diagram.  The G, O, W and A, I, 
>> > Q access codes clearly correspond to it.
>> Agreed. I'm not a BNF master, so formatting/content suggestions are welcome!
>>
>> It has actually reminded me we might sometimes have far thunks... I'm not 
>> sure when are they needed (hey, why would you need more than +-2^31 to 
>> adjust this inside a record type?) so I've added a FIXME. Anyways, the 
>> mangleFunctionClass didn't ever handle "far" functions either.
> Looks good.
>
> "far" isn't related to displacement, it's related to segments and 16-bit 
> Windows.  Thankfully it's dead and we don't support it.  :)

Ah, that's right.
Shall I just remove the BNF lines with "far" then?

> ================
> Comment at: lib/CodeGen/MicrosoftCXXABI.cpp:998
> @@ +997,3 @@
> +
> +    if (TA.Virtual.Microsoft.VBPtrOffset) {
> +      assert(TA.Virtual.Microsoft.VBPtrOffset > 0);
> ----------------
> This corresponds to vtordispex thunks, right?  Can you put in some comments 
> about that, or name give names to the IR nodes?

Sure, will add a comment.

> http://llvm-reviews.chandlerc.com/D2079

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to