On Mon, 16 Dec 2024 09:03:38 GMT, Emanuel Peter <epe...@openjdk.org> wrote:
> > > Can you quickly summarize what tests you have, and what they test? > > > > > > Patch includes functional and performance tests, as per your suggestions IR > > framework-based tests now cover various special cases for constant folding > > transformation. Let me know if you see any gaps. > > I was hoping that you could make a list of all optimizations that are > included here, and tell me where the tests are for it. That would > significantly reduce the review time on my end. Otherwise I have to correlate > everything myself, and that will take me hours. Validations details:- A) x86 backend changes - new assembler instruction - macro assembly routines. Test point:- test/jdk/jdk/incubator/vector/ScalarFloat16OperationsTest.java - This test is based on a testng framework and includes new DataProviders to generate test vectors. - Test vectors cover the entire float16 value range and also special floating point values (NaN, +Int, -Inf, 0.0 and -0.0) B) GVN transformations:- - Value Transforms Test point:- test test/hotspot/jtreg/compiler/c2/irTests/TestFloat16ScalarOperations.java - Covers all the constant folding scenarios for add, sub, mul, div, sqrt, fma, min, and max operations addressed by this patch. - It also tests special case scenarios for each operation as specified by Java language specification. - identity Transforms Test point:- test test/hotspot/jtreg/compiler/c2/irTests/TestFloat16ScalarOperations.java - Covers identity transformation for ReinterpretS2HFNode, DivHFNode - idealization Transforms Test points:- test/hotspot/jtreg/compiler/c2/irTests/MulHFNodeIdealizationTests.java :- test test/hotspot/jtreg/compiler/c2/irTests/TestFloat16ScalarOperations.java - Contains test point for the following transform MulHF idealization i.e. MulHF * 2 => AddHF - Contains test point for the following transform DivHF SRC , PoT(constant) => MulHF SRC * reciprocal (constant) - Contains idealization test points for the following transform ConvF2HF(FP32BinOp(ConvHF2F(x), ConvHF2F(y))) => ReinterpretHF2S(FP16BinOp(ReinterpretS2HF(x), ReinterpretS2HF(y))) ------------- PR Comment: https://git.openjdk.org/jdk/pull/22754#issuecomment-2545754021