The tests for an upcoming CL break when explicit locals are disabled
for this file.
Details
Diff Detail
- Repository
- rL LLVM
- Build Status
Buildable 22450 Build 22450: arc lint + arc unit
Event Timeline
It was the same problem as in https://reviews.llvm.org/D51459 where a TEE is emitted but when explicit locals are disabled it is not properly converted to a TEE_LOCAL. The fact that a TEE is emitted isn't actually interesting in the test, but it causes a crash unless it is lowered to a TEE_LOCAL.
I'm not actually sure. Something else must have changed to make it a non-issue then. But the resolution we settled on at that time was to remove the -wasm-disable-explicit-locals flag from the test.
I'm not actually sure if removing -wasm-disable-explicit-locals or -wasm-keep-registers from test cases is a direction we should head towards, because that generally makes test cases harder to read, as @aardappel in D51459. Especially removing -wasm-keep-registers makes writing test cases extremely hard. Leaving these options as they are and assign 0 as a fake opcode to TEE_LOCAL might be an option too, as I suggested the other day. But that's just how I feel, and I'm not sure if we agreed on gradually removing those options from the test cases. What do you think, @dschuff and @aardappel ?
@aheejin I was originally of the opinion that we should move towards removing these flags as much as possible, but I understand that may not feasible. I guess we should do whatever makes sense for the test.
My bigger motivation was to make the MC representation cleaner: we currently have the situation that MC is registerless.. unless these flags are used.