Hi Pan,
I am not sure if we have some options additional to below, like
-march=generic,
to ensure that the late-combine will take action as expected in testcases.
+/* { dg-options "-march=rv64gcv -mabi=lp64d" } */
I haven't gone through the rest yet (will take some more days) but yes, I
agree. As usual we have at least two options:
- Run the tests either only on supported micro-architectures or make the scan
test dependent on a specific flag. This flag would be true for a list of
uarchs and the list would need to be kept up to date.
- Define a param like --param=force_vv_vx or --param=gr2vr_cost=0 that would
adjust the register-move costs. I actually don't like exposing costs like
that but it would be helpful for testing.
Any other ideas? I think I prefer the second option.
--
Regards
Robin