These attributes are copied from equivalent instructions in
WebAssemblyInstrInfo.td.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | ||
---|---|---|
22 ↗ | (On Diff #163426) | I actually have no idea what isReMaterializable means, but the other const instructions had it. |
lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | ||
---|---|---|
29 ↗ | (On Diff #163426) | I don't think loads and stores are really as cheap as a move (I think "move" means the RISC definition of a move, i.e. "not also a load"). Also wasm loads and stores are potentially more expensive than x86 loads and stores anyway if bounds checking is not free. |
Comment Actions
- Remove isAsCheapAsAMove from mem ops
lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | ||
---|---|---|
29 ↗ | (On Diff #163426) | You're right, I think I got these loads and stores mixed up with set_local/get_local. |
lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | ||
---|---|---|
22 ↗ | (On Diff #163426) | Is isAsCheapAsAMove true for this? Because it basically means putting 128-bit worth of values onto the stack. |
lib/Target/WebAssembly/WebAssemblyInstrSIMD.td | ||
---|---|---|
22 ↗ | (On Diff #163426) | Not actually sure, especially when you think about what this instruction turns into on the backend. I could imagine that for some embedders this is as cheap as a move and for others it is not. |