[AMDGPU] Fix std::array initializers to avoid warnings with older tool chains. NFC
authorBjorn Pettersson <bjorn.a.pettersson@ericsson.com>
Mon, 20 May 2019 16:41:08 +0000 (16:41 +0000)
committerBjorn Pettersson <bjorn.a.pettersson@ericsson.com>
Mon, 20 May 2019 16:41:08 +0000 (16:41 +0000)
A std::array is implemented as a template with an array
inside a struct. Older versions of clang, like 3.6,
require an extra set of curly braces around std::array
initializations to avoid warnings.

The C++ language was changed regarding this by CWG 1270.
So more modern tool chains does not complaing even if
leaving out one level of braces.

llvm-svn: 361171

llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp

index bee39c957bfe45db2d6845ea41b6b5ebfbb0d376..a6d68f3cd0cd5c60cd3f95f232626b7b81b6df34 100644 (file)
@@ -160,7 +160,7 @@ AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsicWSideEffects(
     };
 
     // rsrc, voffset, offset
-    const std::array<unsigned, 3> RegSrcOpIdx = { 2, 3, 4 };
+    const std::array<unsigned, 3> RegSrcOpIdx = { { 2, 3, 4 } };
     return addMappingFromTable<3>(MI, MRI, RegSrcOpIdx, makeArrayRef(Table));
   }
   case Intrinsic::amdgcn_s_buffer_load: {
@@ -179,7 +179,7 @@ AMDGPURegisterBankInfo::getInstrAlternativeMappingsIntrinsicWSideEffects(
     };
 
     // rsrc, offset
-    const std::array<unsigned, 2> RegSrcOpIdx = { 2, 3 };
+    const std::array<unsigned, 2> RegSrcOpIdx = { { 2, 3 } };
     return addMappingFromTable<2>(MI, MRI, RegSrcOpIdx, makeArrayRef(Table));
   }
   default: