implement swizzling on writes
[mesa.git] / src / mesa / pipe / llvm / tgsitollvm.cpp
index 10c417996aec46bc5934b31a6a934746ab602eb6..287a86c60cb61011adc0a5383330623c9b7f26d0 100644 (file)
@@ -1063,11 +1063,14 @@ translate_instructionir(llvm::Module *module,
       struct tgsi_full_dst_register *dst = &inst->FullDstRegisters[i];
 
       if (dst->DstRegister.File == TGSI_FILE_OUTPUT) {
-         storage->storeOutput(dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
+         storage->store(StorageSoa::Output,
+                        dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
       } else if (dst->DstRegister.File == TGSI_FILE_TEMPORARY) {
-         storage->storeTemp(dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
+         storage->store(StorageSoa::Temp,
+                        dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
       } else if (dst->DstRegister.File == TGSI_FILE_ADDRESS) {
-         storage->storeAddress(dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
+         storage->store(StorageSoa::Address,
+                        dst->DstRegister.Index, out, dst->DstRegister.WriteMask);
       } else {
          fprintf(stderr, "ERROR: unsupported LLVM destination!");
          assert(!"wrong destination");