Fix the isTruncateFree logic to match my comment, as the previous logic was way too general. Now the only truncates that are free are i64 -> i32. The original patch was in D37516.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Target/ARM/ARMISelLowering.cpp | ||
---|---|---|
12336 ↗ | (On Diff #116540) | maybe factor it out as a separate function to avoid code duplication? bool ARMTargetLowering::isTruncate64To32(unsigned SrcBits, unsigned DstBits) { return SrcBits == 64 & DstBits == 32); } |
lib/Target/ARM/ARMISelLowering.cpp | ||
---|---|---|
12336 ↗ | (On Diff #116540) | I don't see the value in that here since its a very specific expression. As far as I can see, all the other backends have a similar approach to this as well. |
lib/Target/ARM/ARMISelLowering.cpp | ||
---|---|---|
12336 ↗ | (On Diff #116540) | I agree with Sam I don't see the big value of ARMTargetLowering::isTruncate64To32. |
Comment Actions
Looks good to me (sorry I missed this in the other/previous review; I looked at it and thought it was alright...)