[PATCH] D37448: Fix cast assertion on MS inline assembly with vector spills (PR34021)

Erich Keane via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 5 06:55:49 PDT 2017


erichkeane added a comment.

I apologize for the lack of detail for this comment, but I didn't seem to capture this at the time.  When I investigated this initially, I came up with this solution and it was insufficient.  I don't remember WHAT this ends up not fixing however.

When discussing it with @rnk we decided that (according to my notes):

"so, addReturnRegisterOutputs needs to look at the LLVM return type, and choose between EAX:EDX for integer / struct return types,
ST0 for small FP types, and XMM0/YMM0 etc for vectors/big FP types"

The issue is more that the *TargetInfo::addReturnRegisterOutputs doesn't properly configure things, it simply works with integers. It needs to be extended to work with int/struct types, as well as vector/FP types.


Repository:
  rL LLVM

https://reviews.llvm.org/D37448





More information about the cfe-commits mailing list