RFR: 8346964: C2: Improve integer multiplication with constant in MulINode::Ideal()

erifan duke at openjdk.org
Mon Feb 10 21:25:01 UTC 2025


On Wed, 8 Jan 2025 07:08:43 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

> Maybe you could even create one big patch with everything in it, just so that we can see that there are no regressions. Then split it up into parts (multiple RFEs) for easier review.

Ok, I'll combine the patches and file one big patch, and update the test results.

> Also: It would be nice to see benchmarks on as many different architectures as you can show. And please make sure that the table is nicely aligned - currently it is a bit difficult to read.

OK, I can provide test results on aarch64 V2, N1, AMD64 Genoa and Intel SPR processors.

> What do you mean by VPlan? Are you talking about LLVM? I am working on something a little similar with VTransform. But I'm not sure if it is relevant. I mean in theory you can also use the vector API, and then it would be nice if you had a vector mul, that this would also be changed into shifts if that is more profitable. Actually, maybe you should first address that: which vector mul could be vector shift. That would be a nice stand-alone change that you could implement without regressions, right?

Yes, I mean LLVM VPlan, I noticed your related work, it's very interesting.

> it would be nice if you had a vector mul, that this would also be changed into shifts if that is more profitable. 

Yes.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/22922#issuecomment-2576991041


More information about the hotspot-compiler-dev mailing list