On Tue, Aug 13, 2013 at 3:48 AM, Timur Iskhodzhanov <[email protected]>wrote:

> 2013/8/13 David Majnemer <[email protected]>:
> > +  //
> > +  // N.B. The representation of signed values that are their smallest
> possible
> > +  // value omits the question mark.
> > +  if (Value.isSigned() && Value.isNegative() &&
> !Value.isMinSignedValue()) {
> >      Out << '?';
> >      mangleNumber(llvm::APSInt(Value.abs()));
> >      return;
> > Index: test/CodeGenCXX/mangle-ms-templates.cpp
> > ===================================================================
> > --- test/CodeGenCXX/mangle-ms-templates.cpp
> > +++ test/CodeGenCXX/mangle-ms-templates.cpp
> > @@ -108,6 +108,10 @@
> >    IntTemplate<65535> ffff;
> >  // CHECK: call {{.*}} @"\01??0?$IntTemplate@$0PPPP@@@QAE@XZ"
> >  // X64: call {{.*}} @"\01??0?$IntTemplate@$0PPPP@@@QEAA@XZ"
> > +
> > +  IntTemplate<-2147483648> IntMin;
> > +// CHECK: call {{.*}} @"\01??0?$IntTemplate@$0IAAAAAAA@@@QAE@XZ"
> > +// X64: call {{.*}} @"\01??0?$IntTemplate@$0IAAAAAAA@@@QEAA@XZ"
>
> Are there any cases when a non-int signed value is mangled?
>

No, which means that this patch is wrong. :(
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to