Fix big endian bot
authorChris Bieneman <chris.bieneman@me.com>
Wed, 19 Jul 2023 23:52:52 +0000 (18:52 -0500)
committerChris Bieneman <chris.bieneman@me.com>
Wed, 19 Jul 2023 23:53:20 +0000 (18:53 -0500)
I have yet again broken ppcbe. This should fix it.

llvm/lib/MC/DXContainerPSVInfo.cpp

index ea12495..adf49a5 100644 (file)
@@ -40,11 +40,14 @@ void PSVRuntimeInfo::write(raw_ostream &OS, uint32_t Version) const {
   OS.write(reinterpret_cast<const char *>(&BaseData), InfoSize);
 
   uint32_t ResourceCount = static_cast<uint32_t>(Resources.size());
-  if (sys::IsBigEndianHost)
+  if (sys::IsBigEndianHost) {
     sys::swapByteOrder(ResourceCount);
-  OS.write(reinterpret_cast<const char *>(&ResourceCount), sizeof(uint32_t));
+    sys::swapByteOrder(BindingSize);
+  }
 
+  OS.write(reinterpret_cast<const char *>(&ResourceCount), sizeof(uint32_t));
   OS.write(reinterpret_cast<const char *>(&BindingSize), sizeof(uint32_t));
+  
   for (const auto &Res : Resources)
     OS.write(reinterpret_cast<const char *>(&Res), BindingSize);
 }