]> granicus.if.org Git - llvm/commitdiff
Make TargetParserTest.ARMExtensionFeatures not run out of memory on 32-bit (PR42316)
authorHans Wennborg <hans@hanshq.net>
Wed, 19 Jun 2019 09:46:37 +0000 (09:46 +0000)
committerHans Wennborg <hans@hanshq.net>
Wed, 19 Jun 2019 09:46:37 +0000 (09:46 +0000)
The test still probably shouldn't run this loop 17 million times, but at
least now it won't run out of memory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@363780 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/Support/TargetParserTest.cpp

index 278339acc3bd8933610218b97696a15588137b75..c19be4bb8a2e4211c89d5f4c178779193ae16c20 100644 (file)
@@ -569,15 +569,16 @@ TEST(TargetParserTest, ARMFPURestriction) {
 }
 
 TEST(TargetParserTest, ARMExtensionFeatures) {
-  std::vector<StringRef> Features;
   unsigned Extensions = ARM::AEK_CRC | ARM::AEK_CRYPTO | ARM::AEK_DSP |
                         ARM::AEK_HWDIVARM | ARM::AEK_HWDIVTHUMB | ARM::AEK_MP |
                         ARM::AEK_SEC | ARM::AEK_VIRT | ARM::AEK_RAS | ARM::AEK_FP16 |
                         ARM::AEK_FP16FML | ARM::AEK_FP_DP;
 
-  for (unsigned i = 0; i <= Extensions; i++)
+  for (unsigned i = 0; i <= Extensions; i++) {
+    std::vector<StringRef> Features;
     EXPECT_TRUE(i == 0 ? !ARM::getExtensionFeatures(i, Features)
                        : ARM::getExtensionFeatures(i, Features));
+  }
 }
 
 TEST(TargetParserTest, ARMFPUFeatures) {