APInt is now used instead of uint64_t in function genConstMult() allowing multiplication optimizations with constants of arbitrary length.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
Comment Actions
A negative value have broken it for int128_t, but it's broken for large positive values as well. You need to switch genConstMult to accept an APInt and perform arbitrary precision arithmetic in genConstMult as well.
Comment Actions
LGTM with inline nit addressed.
test/CodeGen/Mips/const-mult.ll | ||
---|---|---|
66 ↗ | (On Diff #116799) | Add a test case with a large positive constant. |