[webgpu] Simplify o2i_output implementation (#23351)

### Description
This change simplifies the o2i_output implementation by reducing
unnecessary intermediate variables, with no change in functionality.

### Motivation and Context
As above.

Signed-off-by: Jianhui Dai <jianhui.j.dai@intel.com>
This commit is contained in:
Jianhui Dai 2025-01-15 03:06:42 +08:00 committed by GitHub
parent 228dd16893
commit 4a0269a5d4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -159,10 +159,8 @@ void ShaderIndicesHelper::Impl(std::ostream& ss) const {
SS_APPEND(ss, " var current = offset;\n");
for (int i = 0; i < rank_ - 1; i++) {
auto current_stride = GetElementAt(stride, i, rank_ - 1);
SS_APPEND(ss, " let dim", i, " = current / ", current_stride, ";\n");
SS_APPEND(ss, " let rest", i, " = current % ", current_stride, ";\n");
SS_APPEND(ss, " indices[", i, "] = dim", i, ";\n");
SS_APPEND(ss, " current = rest", i, ";\n");
SS_APPEND(ss, " indices[", i, "] = current / ", current_stride, ";\n");
SS_APPEND(ss, " current = current % ", current_stride, ";\n");
}
SS_APPEND(ss, " indices[", rank_ - 1, "] = current;\n");
SS_APPEND(ss, " return indices;\n");