|
3 | 3 | * See COPYING for terms of redistribution. |
4 | 4 | */ |
5 | 5 |
|
6 | | -#include <jlm/llvm/ir/operators.hpp> |
| 6 | +#ifndef JLM_LLVM_TESTRVSDGS_HPP |
| 7 | +#define JLM_LLVM_TESTRVSDGS_HPP |
| 8 | + |
| 9 | +#include <jlm/llvm/ir/operators/delta.hpp> |
7 | 10 | #include <jlm/llvm/ir/RvsdgModule.hpp> |
8 | | -#include <jlm/rvsdg/gamma.hpp> |
9 | | -#include <jlm/rvsdg/theta.hpp> |
| 11 | +#include <jlm/rvsdg/lambda.hpp> |
10 | 12 |
|
11 | | -namespace jlm::tests |
| 13 | +namespace jlm::rvsdg |
| 14 | +{ |
| 15 | +class Graph; |
| 16 | +class GammaNode; |
| 17 | +class LambdaNode; |
| 18 | +class PhiNode; |
| 19 | +class ThetaNode; |
| 20 | +} |
| 21 | + |
| 22 | +namespace jlm::llvm |
12 | 23 | { |
13 | 24 |
|
14 | 25 | /** |
@@ -241,8 +252,8 @@ class LoadFromUndefTest final : public RvsdgTest |
241 | 252 | } |
242 | 253 |
|
243 | 254 | private: |
244 | | - jlm::rvsdg::LambdaNode * Lambda_; |
245 | | - rvsdg::Node * UndefValueNode_; |
| 255 | + jlm::rvsdg::LambdaNode * Lambda_{}; |
| 256 | + rvsdg::Node * UndefValueNode_{}; |
246 | 257 | }; |
247 | 258 |
|
248 | 259 | /** \brief GetElementPtrTest class |
@@ -351,12 +362,12 @@ class Bits2PtrTest final : public RvsdgTest |
351 | 362 | std::unique_ptr<jlm::llvm::RvsdgModule> |
352 | 363 | SetupRvsdg() override; |
353 | 364 |
|
354 | | - jlm::rvsdg::LambdaNode * LambdaBits2Ptr_; |
355 | | - jlm::rvsdg::LambdaNode * LambdaTest_; |
| 365 | + jlm::rvsdg::LambdaNode * LambdaBits2Ptr_{}; |
| 366 | + jlm::rvsdg::LambdaNode * LambdaTest_{}; |
356 | 367 |
|
357 | | - rvsdg::Node * BitsToPtrNode_; |
| 368 | + rvsdg::Node * BitsToPtrNode_{}; |
358 | 369 |
|
359 | | - rvsdg::SimpleNode * CallNode_; |
| 370 | + rvsdg::SimpleNode * CallNode_{}; |
360 | 371 | }; |
361 | 372 |
|
362 | 373 | /** \brief ConstantPointerNullTest class |
@@ -438,8 +449,8 @@ class CallTest1 final : public RvsdgTest |
438 | 449 | rvsdg::SimpleNode * alloca_z; |
439 | 450 |
|
440 | 451 | private: |
441 | | - rvsdg::SimpleNode * CallF_; |
442 | | - rvsdg::SimpleNode * CallG_; |
| 452 | + rvsdg::SimpleNode * CallF_{}; |
| 453 | + rvsdg::SimpleNode * CallG_{}; |
443 | 454 | }; |
444 | 455 |
|
445 | 456 | /** \brief CallTest2 class |
@@ -511,11 +522,11 @@ class CallTest2 final : public RvsdgTest |
511 | 522 | std::unique_ptr<jlm::llvm::RvsdgModule> |
512 | 523 | SetupRvsdg() override; |
513 | 524 |
|
514 | | - rvsdg::SimpleNode * CallCreate1_; |
515 | | - rvsdg::SimpleNode * CallCreate2_; |
| 525 | + rvsdg::SimpleNode * CallCreate1_{}; |
| 526 | + rvsdg::SimpleNode * CallCreate2_{}; |
516 | 527 |
|
517 | | - rvsdg::SimpleNode * CallDestroy1_; |
518 | | - rvsdg::SimpleNode * CallDestroy2_; |
| 528 | + rvsdg::SimpleNode * CallDestroy1_{}; |
| 529 | + rvsdg::SimpleNode * CallDestroy2_{}; |
519 | 530 | }; |
520 | 531 |
|
521 | 532 | /** \brief IndirectCallTest1 class |
@@ -600,14 +611,14 @@ class IndirectCallTest1 final : public RvsdgTest |
600 | 611 | std::unique_ptr<jlm::llvm::RvsdgModule> |
601 | 612 | SetupRvsdg() override; |
602 | 613 |
|
603 | | - rvsdg::SimpleNode * CallIndcall_; |
604 | | - rvsdg::SimpleNode * CallThree_; |
605 | | - rvsdg::SimpleNode * CallFour_; |
| 614 | + rvsdg::SimpleNode * CallIndcall_{}; |
| 615 | + rvsdg::SimpleNode * CallThree_{}; |
| 616 | + rvsdg::SimpleNode * CallFour_{}; |
606 | 617 |
|
607 | | - jlm::rvsdg::LambdaNode * LambdaThree_; |
608 | | - jlm::rvsdg::LambdaNode * LambdaFour_; |
609 | | - jlm::rvsdg::LambdaNode * LambdaIndcall_; |
610 | | - jlm::rvsdg::LambdaNode * LambdaTest_; |
| 618 | + jlm::rvsdg::LambdaNode * LambdaThree_{}; |
| 619 | + jlm::rvsdg::LambdaNode * LambdaFour_{}; |
| 620 | + jlm::rvsdg::LambdaNode * LambdaIndcall_{}; |
| 621 | + jlm::rvsdg::LambdaNode * LambdaTest_{}; |
611 | 622 | }; |
612 | 623 |
|
613 | 624 | /** \brief IndirectCallTest2 class |
@@ -787,27 +798,27 @@ class IndirectCallTest2 final : public RvsdgTest |
787 | 798 | std::unique_ptr<jlm::llvm::RvsdgModule> |
788 | 799 | SetupRvsdg() override; |
789 | 800 |
|
790 | | - jlm::rvsdg::DeltaNode * DeltaG1_; |
791 | | - jlm::rvsdg::DeltaNode * DeltaG2_; |
792 | | - |
793 | | - jlm::rvsdg::LambdaNode * LambdaThree_; |
794 | | - jlm::rvsdg::LambdaNode * LambdaFour_; |
795 | | - jlm::rvsdg::LambdaNode * LambdaI_; |
796 | | - jlm::rvsdg::LambdaNode * LambdaX_; |
797 | | - jlm::rvsdg::LambdaNode * LambdaY_; |
798 | | - jlm::rvsdg::LambdaNode * LambdaTest_; |
799 | | - jlm::rvsdg::LambdaNode * LambdaTest2_; |
800 | | - |
801 | | - rvsdg::SimpleNode * IndirectCall_; |
802 | | - rvsdg::SimpleNode * CallIWithThree_; |
803 | | - rvsdg::SimpleNode * CallIWithFour_; |
804 | | - rvsdg::SimpleNode * TestCallX_; |
805 | | - rvsdg::SimpleNode * Test2CallX_; |
806 | | - rvsdg::SimpleNode * CallY_; |
807 | | - |
808 | | - jlm::rvsdg::SimpleNode * AllocaPx_; |
809 | | - jlm::rvsdg::SimpleNode * AllocaPy_; |
810 | | - jlm::rvsdg::SimpleNode * AllocaPz_; |
| 801 | + jlm::rvsdg::DeltaNode * DeltaG1_{}; |
| 802 | + jlm::rvsdg::DeltaNode * DeltaG2_{}; |
| 803 | + |
| 804 | + jlm::rvsdg::LambdaNode * LambdaThree_{}; |
| 805 | + jlm::rvsdg::LambdaNode * LambdaFour_{}; |
| 806 | + jlm::rvsdg::LambdaNode * LambdaI_{}; |
| 807 | + jlm::rvsdg::LambdaNode * LambdaX_{}; |
| 808 | + jlm::rvsdg::LambdaNode * LambdaY_{}; |
| 809 | + jlm::rvsdg::LambdaNode * LambdaTest_{}; |
| 810 | + jlm::rvsdg::LambdaNode * LambdaTest2_{}; |
| 811 | + |
| 812 | + rvsdg::SimpleNode * IndirectCall_{}; |
| 813 | + rvsdg::SimpleNode * CallIWithThree_{}; |
| 814 | + rvsdg::SimpleNode * CallIWithFour_{}; |
| 815 | + rvsdg::SimpleNode * TestCallX_{}; |
| 816 | + rvsdg::SimpleNode * Test2CallX_{}; |
| 817 | + rvsdg::SimpleNode * CallY_{}; |
| 818 | + |
| 819 | + jlm::rvsdg::SimpleNode * AllocaPx_{}; |
| 820 | + jlm::rvsdg::SimpleNode * AllocaPy_{}; |
| 821 | + jlm::rvsdg::SimpleNode * AllocaPz_{}; |
811 | 822 | }; |
812 | 823 |
|
813 | 824 | /** |
@@ -852,11 +863,11 @@ class ExternalCallTest1 final : public RvsdgTest |
852 | 863 | std::unique_ptr<jlm::llvm::RvsdgModule> |
853 | 864 | SetupRvsdg() override; |
854 | 865 |
|
855 | | - jlm::rvsdg::LambdaNode * LambdaF_; |
| 866 | + jlm::rvsdg::LambdaNode * LambdaF_{}; |
856 | 867 |
|
857 | | - rvsdg::SimpleNode * CallG_; |
| 868 | + rvsdg::SimpleNode * CallG_{}; |
858 | 869 |
|
859 | | - jlm::rvsdg::GraphImport * ExternalGArgument_; |
| 870 | + jlm::rvsdg::GraphImport * ExternalGArgument_{}; |
860 | 871 | }; |
861 | 872 |
|
862 | 873 | /** |
@@ -1077,20 +1088,20 @@ class GammaTest2 final : public RvsdgTest |
1077 | 1088 | std::unique_ptr<llvm::RvsdgModule> |
1078 | 1089 | SetupRvsdg() override; |
1079 | 1090 |
|
1080 | | - rvsdg::LambdaNode * LambdaF_; |
1081 | | - rvsdg::LambdaNode * LambdaG_; |
1082 | | - rvsdg::LambdaNode * LambdaH_; |
| 1091 | + rvsdg::LambdaNode * LambdaF_{}; |
| 1092 | + rvsdg::LambdaNode * LambdaG_{}; |
| 1093 | + rvsdg::LambdaNode * LambdaH_{}; |
1083 | 1094 |
|
1084 | | - rvsdg::GammaNode * Gamma_; |
| 1095 | + rvsdg::GammaNode * Gamma_{}; |
1085 | 1096 |
|
1086 | | - rvsdg::SimpleNode * CallFromG_; |
1087 | | - rvsdg::SimpleNode * CallFromH_; |
| 1097 | + rvsdg::SimpleNode * CallFromG_{}; |
| 1098 | + rvsdg::SimpleNode * CallFromH_{}; |
1088 | 1099 |
|
1089 | | - rvsdg::Node * AllocaXFromG_; |
1090 | | - rvsdg::Node * AllocaYFromG_; |
1091 | | - rvsdg::Node * AllocaXFromH_; |
1092 | | - rvsdg::Node * AllocaYFromH_; |
1093 | | - rvsdg::Node * AllocaZ_; |
| 1100 | + rvsdg::Node * AllocaXFromG_{}; |
| 1101 | + rvsdg::Node * AllocaYFromG_{}; |
| 1102 | + rvsdg::Node * AllocaXFromH_{}; |
| 1103 | + rvsdg::Node * AllocaYFromH_{}; |
| 1104 | + rvsdg::Node * AllocaZ_{}; |
1094 | 1105 | }; |
1095 | 1106 |
|
1096 | 1107 | /** \brief ThetaTest class |
@@ -1166,7 +1177,7 @@ class DeltaTest1 final : public RvsdgTest |
1166 | 1177 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1167 | 1178 | SetupRvsdg() override; |
1168 | 1179 |
|
1169 | | - rvsdg::SimpleNode * CallG_; |
| 1180 | + rvsdg::SimpleNode * CallG_{}; |
1170 | 1181 | }; |
1171 | 1182 |
|
1172 | 1183 | /** \brief DeltaTest2 class |
@@ -1214,7 +1225,7 @@ class DeltaTest2 final : public RvsdgTest |
1214 | 1225 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1215 | 1226 | SetupRvsdg() override; |
1216 | 1227 |
|
1217 | | - rvsdg::SimpleNode * CallF1_; |
| 1228 | + rvsdg::SimpleNode * CallF1_{}; |
1218 | 1229 | }; |
1219 | 1230 |
|
1220 | 1231 | /** \brief DeltaTest3 class |
@@ -1279,13 +1290,13 @@ class DeltaTest3 final : public RvsdgTest |
1279 | 1290 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1280 | 1291 | SetupRvsdg() override; |
1281 | 1292 |
|
1282 | | - jlm::rvsdg::LambdaNode * LambdaF_; |
1283 | | - jlm::rvsdg::LambdaNode * LambdaTest_; |
| 1293 | + jlm::rvsdg::LambdaNode * LambdaF_{}; |
| 1294 | + jlm::rvsdg::LambdaNode * LambdaTest_{}; |
1284 | 1295 |
|
1285 | | - jlm::rvsdg::DeltaNode * DeltaG1_; |
1286 | | - jlm::rvsdg::DeltaNode * DeltaG2_; |
| 1296 | + jlm::rvsdg::DeltaNode * DeltaG1_{}; |
| 1297 | + jlm::rvsdg::DeltaNode * DeltaG2_{}; |
1287 | 1298 |
|
1288 | | - rvsdg::SimpleNode * CallF_; |
| 1299 | + rvsdg::SimpleNode * CallF_{}; |
1289 | 1300 | }; |
1290 | 1301 |
|
1291 | 1302 | /** \brief ImportTest class |
@@ -1333,7 +1344,7 @@ class ImportTest final : public RvsdgTest |
1333 | 1344 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1334 | 1345 | SetupRvsdg() override; |
1335 | 1346 |
|
1336 | | - rvsdg::SimpleNode * CallF1_; |
| 1347 | + rvsdg::SimpleNode * CallF1_{}; |
1337 | 1348 | }; |
1338 | 1349 |
|
1339 | 1350 | /** \brief PhiTest1 class |
@@ -1401,10 +1412,10 @@ class PhiTest1 final : public RvsdgTest |
1401 | 1412 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1402 | 1413 | SetupRvsdg() override; |
1403 | 1414 |
|
1404 | | - rvsdg::SimpleNode * CallFibm1_; |
1405 | | - rvsdg::SimpleNode * CallFibm2_; |
| 1415 | + rvsdg::SimpleNode * CallFibm1_{}; |
| 1416 | + rvsdg::SimpleNode * CallFibm2_{}; |
1406 | 1417 |
|
1407 | | - rvsdg::SimpleNode * CallFib_; |
| 1418 | + rvsdg::SimpleNode * CallFib_{}; |
1408 | 1419 | }; |
1409 | 1420 |
|
1410 | 1421 | /** \brief PhiTest2 class |
@@ -1605,28 +1616,28 @@ class PhiTest2 final : public RvsdgTest |
1605 | 1616 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1606 | 1617 | SetupRvsdg() override; |
1607 | 1618 |
|
1608 | | - jlm::rvsdg::LambdaNode * LambdaEight_; |
1609 | | - jlm::rvsdg::LambdaNode * LambdaI_; |
1610 | | - jlm::rvsdg::LambdaNode * LambdaA_; |
1611 | | - jlm::rvsdg::LambdaNode * LambdaB_; |
1612 | | - jlm::rvsdg::LambdaNode * LambdaC_; |
1613 | | - jlm::rvsdg::LambdaNode * LambdaD_; |
1614 | | - jlm::rvsdg::LambdaNode * LambdaTest_; |
1615 | | - |
1616 | | - rvsdg::SimpleNode * CallAFromTest_; |
1617 | | - rvsdg::SimpleNode * CallAFromC_; |
1618 | | - rvsdg::SimpleNode * CallAFromD_; |
1619 | | - rvsdg::SimpleNode * CallB_; |
1620 | | - rvsdg::SimpleNode * CallC_; |
1621 | | - rvsdg::SimpleNode * CallD_; |
1622 | | - rvsdg::SimpleNode * CallI_; |
1623 | | - rvsdg::SimpleNode * IndirectCall_; |
1624 | | - |
1625 | | - jlm::rvsdg::SimpleNode * PTestAlloca_; |
1626 | | - jlm::rvsdg::SimpleNode * PaAlloca_; |
1627 | | - jlm::rvsdg::SimpleNode * PbAlloca_; |
1628 | | - jlm::rvsdg::SimpleNode * PcAlloca_; |
1629 | | - jlm::rvsdg::SimpleNode * PdAlloca_; |
| 1619 | + jlm::rvsdg::LambdaNode * LambdaEight_{}; |
| 1620 | + jlm::rvsdg::LambdaNode * LambdaI_{}; |
| 1621 | + jlm::rvsdg::LambdaNode * LambdaA_{}; |
| 1622 | + jlm::rvsdg::LambdaNode * LambdaB_{}; |
| 1623 | + jlm::rvsdg::LambdaNode * LambdaC_{}; |
| 1624 | + jlm::rvsdg::LambdaNode * LambdaD_{}; |
| 1625 | + jlm::rvsdg::LambdaNode * LambdaTest_{}; |
| 1626 | + |
| 1627 | + rvsdg::SimpleNode * CallAFromTest_{}; |
| 1628 | + rvsdg::SimpleNode * CallAFromC_{}; |
| 1629 | + rvsdg::SimpleNode * CallAFromD_{}; |
| 1630 | + rvsdg::SimpleNode * CallB_{}; |
| 1631 | + rvsdg::SimpleNode * CallC_{}; |
| 1632 | + rvsdg::SimpleNode * CallD_{}; |
| 1633 | + rvsdg::SimpleNode * CallI_{}; |
| 1634 | + rvsdg::SimpleNode * IndirectCall_{}; |
| 1635 | + |
| 1636 | + jlm::rvsdg::SimpleNode * PTestAlloca_{}; |
| 1637 | + jlm::rvsdg::SimpleNode * PaAlloca_{}; |
| 1638 | + jlm::rvsdg::SimpleNode * PbAlloca_{}; |
| 1639 | + jlm::rvsdg::SimpleNode * PcAlloca_{}; |
| 1640 | + jlm::rvsdg::SimpleNode * PdAlloca_{}; |
1630 | 1641 | }; |
1631 | 1642 |
|
1632 | 1643 | /** |
@@ -1886,15 +1897,15 @@ class MemcpyTest final : public RvsdgTest |
1886 | 1897 | std::unique_ptr<jlm::llvm::RvsdgModule> |
1887 | 1898 | SetupRvsdg() override; |
1888 | 1899 |
|
1889 | | - jlm::rvsdg::LambdaNode * LambdaF_; |
1890 | | - jlm::rvsdg::LambdaNode * LambdaG_; |
| 1900 | + jlm::rvsdg::LambdaNode * LambdaF_{}; |
| 1901 | + jlm::rvsdg::LambdaNode * LambdaG_{}; |
1891 | 1902 |
|
1892 | | - jlm::rvsdg::DeltaNode * LocalArray_; |
1893 | | - jlm::rvsdg::DeltaNode * GlobalArray_; |
| 1903 | + jlm::rvsdg::DeltaNode * LocalArray_{}; |
| 1904 | + jlm::rvsdg::DeltaNode * GlobalArray_{}; |
1894 | 1905 |
|
1895 | | - rvsdg::SimpleNode * CallF_; |
| 1906 | + rvsdg::SimpleNode * CallF_{}; |
1896 | 1907 |
|
1897 | | - rvsdg::SimpleNode * Memcpy_; |
| 1908 | + rvsdg::SimpleNode * Memcpy_{}; |
1898 | 1909 | }; |
1899 | 1910 |
|
1900 | 1911 | /** |
@@ -2070,11 +2081,11 @@ class LinkedListTest final : public RvsdgTest |
2070 | 2081 | std::unique_ptr<jlm::llvm::RvsdgModule> |
2071 | 2082 | SetupRvsdg() override; |
2072 | 2083 |
|
2073 | | - jlm::rvsdg::DeltaNode * DeltaMyList_; |
| 2084 | + jlm::rvsdg::DeltaNode * DeltaMyList_{}; |
2074 | 2085 |
|
2075 | | - jlm::rvsdg::LambdaNode * LambdaNext_; |
| 2086 | + jlm::rvsdg::LambdaNode * LambdaNext_{}; |
2076 | 2087 |
|
2077 | | - rvsdg::SimpleNode * Alloca_; |
| 2088 | + rvsdg::SimpleNode * Alloca_{}; |
2078 | 2089 | }; |
2079 | 2090 |
|
2080 | 2091 | /** \brief RVSDG module with one of each memory node type. |
@@ -2397,7 +2408,7 @@ class FreeNullTest final : public RvsdgTest |
2397 | 2408 | std::unique_ptr<llvm::RvsdgModule> |
2398 | 2409 | SetupRvsdg() override; |
2399 | 2410 |
|
2400 | | - rvsdg::LambdaNode * LambdaMain_; |
| 2411 | + rvsdg::LambdaNode * LambdaMain_{}; |
2401 | 2412 | }; |
2402 | 2413 |
|
2403 | 2414 | /** |
@@ -2543,3 +2554,5 @@ class VariadicFunctionTest2 final : public RvsdgTest |
2543 | 2554 | }; |
2544 | 2555 |
|
2545 | 2556 | } |
| 2557 | + |
| 2558 | +#endif |
0 commit comments