Skip to content

Commit

Permalink
fixed #12063 - use less heavy code in executor tests (danmar#5566)
Browse files Browse the repository at this point in the history
The allocation invokes some heavy ValueFlow computations. We just want
to generate an unconditional error from the analysis so use some lighter
code which does the same.

`TestThreadExecutorFiles::deadlock_with_many_errors`

Before:
```
real    0m23.517s
user    0m33.453s
sys     0m2.297s
```

After:
```
real    0m5.051s
user    0m6.234s
sys     0m0.422s
```
  • Loading branch information
firewave authored Oct 17, 2023
1 parent 85fe627 commit b40d36a
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 20 deletions.
14 changes: 7 additions & 7 deletions test/testprocessexecutor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ class TestProcessExecutorBase : public TestFixture {
oss << "int main()\n"
<< "{\n";
for (int i = 0; i < 500; i++)
oss << " {char *a = malloc(10);}\n";
oss << " {int i = *((int*)0);}\n";

oss << " return 0;\n"
<< "}\n";
Expand All @@ -173,7 +173,7 @@ class TestProcessExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}");
}
Expand All @@ -184,7 +184,7 @@ class TestProcessExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.showtime = SHOWTIME_MODES::SHOWTIME_SUMMARY));
}
Expand All @@ -196,7 +196,7 @@ class TestProcessExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.plistOutput = plistOutput.c_str()));
}
Expand Down Expand Up @@ -229,7 +229,7 @@ class TestProcessExecutorBase : public TestFixture {
check(2, 1, 1,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -238,7 +238,7 @@ class TestProcessExecutorBase : public TestFixture {
check(2, 20, 20,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -256,7 +256,7 @@ class TestProcessExecutorBase : public TestFixture {
check(2, 4, 2,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}",
dinit(CheckOptions,
Expand Down
12 changes: 6 additions & 6 deletions test/testsingleexecutor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ class TestSingleExecutorBase : public TestFixture {
check(100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions,
$.quiet = false));
Expand All @@ -180,7 +180,7 @@ class TestSingleExecutorBase : public TestFixture {
check(100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.showtime = SHOWTIME_MODES::SHOWTIME_SUMMARY));
}
Expand All @@ -192,7 +192,7 @@ class TestSingleExecutorBase : public TestFixture {
check(100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.plistOutput = plistOutput.c_str()));
}
Expand Down Expand Up @@ -225,7 +225,7 @@ class TestSingleExecutorBase : public TestFixture {
check(1, 1,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -234,7 +234,7 @@ class TestSingleExecutorBase : public TestFixture {
check(20, 20,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -252,7 +252,7 @@ class TestSingleExecutorBase : public TestFixture {
check(4, 2,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}",
dinit(CheckOptions,
Expand Down
14 changes: 7 additions & 7 deletions test/testthreadexecutor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@ class TestThreadExecutorBase : public TestFixture {
oss << "int main()\n"
<< "{\n";
for (int i = 0; i < 500; i++)
oss << " {char *a = malloc(10);}\n";
oss << " {int i = *((int*)0);}\n";

oss << " return 0;\n"
<< "}\n";
Expand All @@ -172,7 +172,7 @@ class TestThreadExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}");
}
Expand All @@ -183,7 +183,7 @@ class TestThreadExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.showtime = SHOWTIME_MODES::SHOWTIME_SUMMARY));
}
Expand All @@ -195,7 +195,7 @@ class TestThreadExecutorBase : public TestFixture {
check(16, 100, 100,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}", dinit(CheckOptions, $.plistOutput = plistOutput.c_str()));
}
Expand Down Expand Up @@ -228,7 +228,7 @@ class TestThreadExecutorBase : public TestFixture {
check(2, 1, 1,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -237,7 +237,7 @@ class TestThreadExecutorBase : public TestFixture {
check(2, 20, 20,
"int main()\n"
"{\n"
" {char *a = malloc(10);}\n"
" {int i = *((int*)0);}\n"
" return 0;\n"
"}");
}
Expand All @@ -255,7 +255,7 @@ class TestThreadExecutorBase : public TestFixture {
check(2, 4, 2,
"int main()\n"
"{\n"
" char *a = malloc(10);\n"
" int i = *((int*)0);\n"
" return 0;\n"
"}",
dinit(CheckOptions,
Expand Down

0 comments on commit b40d36a

Please sign in to comment.