Details
- Reviewers
MaskRay craig.topper asb arichardson
Diff Detail
Event Timeline
All backends have two test cases inside llvm/test/tools/UpdateTestChecks/update_llc_test_checks/ , except riscv. And my patch addes the missing test xxx_generated.funcs.ll for riscv.
This used to exist but it exposed a bug and the test was removed in b8779337841bea03bc514d239ce76eceba3f01dd. The commit message states that it only happened with expensive-checks. If it works (with expensive checks) b8779337841bea03bc514d239ce76eceba3f01dd can be reverted.
Hm, there is a lot of duplication in all these tests (we currently have 12 copies of almost-identical IR), it seems like we should just add a whole load of CHECK lines to a single copy of the IR?..
That's... not a good way to fix a bug? This is news to me, and that was committed without any review (let alone by RISC-V maintainers...). And no mention of what the bug actually is in the commit message.
Indeed.
That would be nice if possible, but IMO that should be a separate patch. Wouldn't that require the bots to support all of the targets to run the combined test? I also wonder if that could become awkward in the future if the outlining started to diverge significantly between targets.
If the builbots with expensive checks are all OK for this patch, and this patch is exactly the same as what b8779337841b removed, should we then just revert b8779337841b now?
Ah good point, you'd want the single copy of the IR and prepend a header on the thing at test time for each architecture (each being its own .test like now)? I.e. we'd just generate all the foo_generated_funcs.ll at test time rather than have N copies of them in the tree, but everything else would be the same.