From 52040e8c6c772a2f6ff1cba8785e7fb4414b3186 Mon Sep 17 00:00:00 2001 From: Krishna-13-cyber Date: Thu, 22 Feb 2024 17:37:08 +0530 Subject: [PATCH] Add support for 32bit CI build --- .github/workflows/arch.yml | 53 ++++++++++++++++++++ test/Arrays/ArrayInputsReverseMode.C | 1 + test/Arrays/Arrays.C | 1 + test/ErrorEstimation/LoopsAndArrays.C | 1 + test/ErrorEstimation/LoopsAndArraysExec.C | 1 + test/FirstDerivative/BasicArithmeticMulDiv.C | 1 + test/FirstDerivative/Overloads.C | 1 + test/Gradient/Assignments.C | 1 + test/Gradient/FunctionCalls.C | 1 + test/Gradient/Gradients.C | 1 + test/Gradient/Loops.C | 1 + test/Gradient/Pointers.C | 1 + test/Gradient/Switch.C | 1 + test/Gradient/SwitchInit.C | 1 + test/Gradient/TestTypeConversion.C | 1 + test/Gradient/UserDefinedTypes.C | 2 +- test/Hessian/Arrays.C | 1 + test/Hessian/BuiltinDerivatives.C | 1 + test/Hessian/Functors.C | 1 + test/Hessian/Hessians.C | 1 + test/Hessian/NestedFunctionCalls.C | 1 + test/Hessian/Pointers.C | 1 + test/Hessian/TemplateFunctors.C | 1 + test/Hessian/constexprTest.C | 1 + test/Hessian/testhessUtility.C | 1 + test/Jacobian/FunctionCalls.C | 1 + test/Jacobian/Functors.C | 1 + test/Jacobian/Jacobian.C | 1 + test/Jacobian/Pointers.C | 2 + test/Jacobian/TemplateFunctors.C | 1 + test/Jacobian/constexprTest.C | 1 + test/Jacobian/testUtility.C | 1 + test/Misc/RunDemos.C | 1 + 33 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/arch.yml diff --git a/.github/workflows/arch.yml b/.github/workflows/arch.yml new file mode 100644 index 000000000..fe413e1f4 --- /dev/null +++ b/.github/workflows/arch.yml @@ -0,0 +1,53 @@ +--- +name: 'Arch' +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + architecture: + strategy: + matrix: + target: [x86] + runs-on: ubuntu-latest + steps: + - name: Checkout branch + uses: actions/checkout@v3 + - name: "Setup latest Alpine Linux" + uses: jirutka/setup-alpine@v1 + with: + arch: ${{ matrix.target }} + branch: edge + packages: > + llvm-dev + clang-dev + clang-static + llvm17-static + llvm17-gtest + cmake + llvm + clang + make + git + - name: "Setup" + run: | + clang --version + make --version + shell: alpine.sh {0} + + - name: "Compile library" + run: | + mkdir build && cd build + cmake -DLLVM_EXTERNAL_LIT="$(which lit)" ../../clad + make -j 8 check-clad + shell: alpine.sh {0} + + - name: Setup tmate session + if: ${{ failure() && runner.debug }} + uses: mxschmitt/action-tmate@v3 + # When debugging increase to a suitable value! + timeout-minutes: 30 diff --git a/test/Arrays/ArrayInputsReverseMode.C b/test/Arrays/ArrayInputsReverseMode.C index 944eec1a1..7587c89e4 100644 --- a/test/Arrays/ArrayInputsReverseMode.C +++ b/test/Arrays/ArrayInputsReverseMode.C @@ -4,6 +4,7 @@ // RUN: ./ArrayInputsReverseMode.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Arrays/Arrays.C b/test/Arrays/Arrays.C index 86f83e0af..749ed41b0 100644 --- a/test/Arrays/Arrays.C +++ b/test/Arrays/Arrays.C @@ -4,6 +4,7 @@ // RUN: ./Arrays.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/ErrorEstimation/LoopsAndArrays.C b/test/ErrorEstimation/LoopsAndArrays.C index 0290ebefc..f7ef15517 100644 --- a/test/ErrorEstimation/LoopsAndArrays.C +++ b/test/ErrorEstimation/LoopsAndArrays.C @@ -1,5 +1,6 @@ // RUN: %cladclang -I%S/../../include -oLoopsAndArrays.out %s 2>&1 | FileCheck %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/ErrorEstimation/LoopsAndArraysExec.C b/test/ErrorEstimation/LoopsAndArraysExec.C index 5bc4f2daa..fb067c942 100644 --- a/test/ErrorEstimation/LoopsAndArraysExec.C +++ b/test/ErrorEstimation/LoopsAndArraysExec.C @@ -2,6 +2,7 @@ // RUN: ./LoopsAndArraysExec.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/FirstDerivative/BasicArithmeticMulDiv.C b/test/FirstDerivative/BasicArithmeticMulDiv.C index cc13ca49c..1362708c3 100644 --- a/test/FirstDerivative/BasicArithmeticMulDiv.C +++ b/test/FirstDerivative/BasicArithmeticMulDiv.C @@ -2,6 +2,7 @@ // RUN: ./BasicArithmeticMulDiv.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/FirstDerivative/Overloads.C b/test/FirstDerivative/Overloads.C index f69b13be5..025fd7e0b 100644 --- a/test/FirstDerivative/Overloads.C +++ b/test/FirstDerivative/Overloads.C @@ -2,6 +2,7 @@ // RUN: ./Overloads.out | FileCheck -check-prefix=CHECK-EXEC %s // XFAIL: asserts //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Gradient/Assignments.C b/test/Gradient/Assignments.C index a30da99cb..d7bb97384 100644 --- a/test/Gradient/Assignments.C +++ b/test/Gradient/Assignments.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oReverseAssignments.out // RUN: ./ReverseAssignments.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Gradient/FunctionCalls.C b/test/Gradient/FunctionCalls.C index 828bca861..3bfd3da8d 100644 --- a/test/Gradient/FunctionCalls.C +++ b/test/Gradient/FunctionCalls.C @@ -4,6 +4,7 @@ // RUN: ./FunctionCalls.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Gradient/Gradients.C b/test/Gradient/Gradients.C index 5a6a8cb52..2d1e935c0 100644 --- a/test/Gradient/Gradients.C +++ b/test/Gradient/Gradients.C @@ -4,6 +4,7 @@ // RUN: ./Gradients.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Gradient/Loops.C b/test/Gradient/Loops.C index 27c54bee0..3b1f2cbca 100644 --- a/test/Gradient/Loops.C +++ b/test/Gradient/Loops.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oReverseLoops.out // RUN: ./ReverseLoops.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Gradient/Pointers.C b/test/Gradient/Pointers.C index 107254ae0..2826b87a8 100644 --- a/test/Gradient/Pointers.C +++ b/test/Gradient/Pointers.C @@ -4,6 +4,7 @@ // FIXME: This test does not work with enable-tbr flag, because the // current implementation of TBR analysis doesn't support pointers. +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Gradient/Switch.C b/test/Gradient/Switch.C index 686a3f1b1..9c6e1b083 100644 --- a/test/Gradient/Switch.C +++ b/test/Gradient/Switch.C @@ -1,6 +1,7 @@ // RUN: %cladclang %s -I%S/../../include -oSwitch.out 2>&1 -lstdc++ -lm | FileCheck %s // RUN: ./Switch.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include "../TestUtils.h" diff --git a/test/Gradient/SwitchInit.C b/test/Gradient/SwitchInit.C index f2112c8f4..15af82589 100644 --- a/test/Gradient/SwitchInit.C +++ b/test/Gradient/SwitchInit.C @@ -1,6 +1,7 @@ // RUN: %cladclang %s -I%S/../../include -std=c++17 -oSwitchInit.out 2>&1 -lstdc++ -lm | FileCheck %s // RUN: ./SwitchInit.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Gradient/TestTypeConversion.C b/test/Gradient/TestTypeConversion.C index 20582e35b..4ccaedc8b 100644 --- a/test/Gradient/TestTypeConversion.C +++ b/test/Gradient/TestTypeConversion.C @@ -4,6 +4,7 @@ // RUN: ./TestTypeConversion.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Gradient/UserDefinedTypes.C b/test/Gradient/UserDefinedTypes.C index 7df32651a..4484df6ae 100644 --- a/test/Gradient/UserDefinedTypes.C +++ b/test/Gradient/UserDefinedTypes.C @@ -4,7 +4,7 @@ // RUN: ./UserDefinedTypes.out | FileCheck -check-prefix=CHECK-EXEC %s // XFAIL: asserts // CHECK-NOT: {{.*error|warning|note:.*}} - +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Hessian/Arrays.C b/test/Hessian/Arrays.C index 36182ce7d..eebdf61dd 100644 --- a/test/Hessian/Arrays.C +++ b/test/Hessian/Arrays.C @@ -4,6 +4,7 @@ // RUN: ./Arrays.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/BuiltinDerivatives.C b/test/Hessian/BuiltinDerivatives.C index 40a512602..7587a86c1 100644 --- a/test/Hessian/BuiltinDerivatives.C +++ b/test/Hessian/BuiltinDerivatives.C @@ -5,6 +5,7 @@ //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Hessian/Functors.C b/test/Hessian/Functors.C index c5e3a71a7..502f11f86 100644 --- a/test/Hessian/Functors.C +++ b/test/Hessian/Functors.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oFunctors.out // RUN: ./Functors.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/Hessians.C b/test/Hessian/Hessians.C index cdc1860c1..f6ced7852 100644 --- a/test/Hessian/Hessians.C +++ b/test/Hessian/Hessians.C @@ -4,6 +4,7 @@ // RUN: ./Hessians.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/NestedFunctionCalls.C b/test/Hessian/NestedFunctionCalls.C index 7d72acbd8..dea80f1d0 100644 --- a/test/Hessian/NestedFunctionCalls.C +++ b/test/Hessian/NestedFunctionCalls.C @@ -4,6 +4,7 @@ // RUN: ./NestedFunctionCalls.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/Pointers.C b/test/Hessian/Pointers.C index 62f3876c5..ff18d852b 100644 --- a/test/Hessian/Pointers.C +++ b/test/Hessian/Pointers.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oPointers.out // RUN: ./Pointers.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/TemplateFunctors.C b/test/Hessian/TemplateFunctors.C index e5c7e5bc6..5d99fe42a 100644 --- a/test/Hessian/TemplateFunctors.C +++ b/test/Hessian/TemplateFunctors.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oTemplateFunctors.out // RUN: ./TemplateFunctors.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/constexprTest.C b/test/Hessian/constexprTest.C index 9430068da..f7e3398bf 100644 --- a/test/Hessian/constexprTest.C +++ b/test/Hessian/constexprTest.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -std=c++14 -oconstexprTest.out // RUN: ./constexprTest.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Hessian/testhessUtility.C b/test/Hessian/testhessUtility.C index f927f7fee..5015dc8d7 100644 --- a/test/Hessian/testhessUtility.C +++ b/test/Hessian/testhessUtility.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -otesthessUtility.out // RUN: ./testhessUtility.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Jacobian/FunctionCalls.C b/test/Jacobian/FunctionCalls.C index b0b6b8eca..e4d714728 100644 --- a/test/Jacobian/FunctionCalls.C +++ b/test/Jacobian/FunctionCalls.C @@ -4,6 +4,7 @@ // RUN: ./FunctionCalls.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include #include "clad/Differentiator/Differentiator.h" diff --git a/test/Jacobian/Functors.C b/test/Jacobian/Functors.C index 33fff79d6..bc80ea36c 100644 --- a/test/Jacobian/Functors.C +++ b/test/Jacobian/Functors.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oFunctors.out // RUN: ./Functors.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Jacobian/Jacobian.C b/test/Jacobian/Jacobian.C index 625aa94b8..f7862e56c 100644 --- a/test/Jacobian/Jacobian.C +++ b/test/Jacobian/Jacobian.C @@ -4,6 +4,7 @@ // RUN: ./Jacobian.out | FileCheck -check-prefix=CHECK-EXEC %s //CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" #include diff --git a/test/Jacobian/Pointers.C b/test/Jacobian/Pointers.C index 3245aaed8..7c74193aa 100644 --- a/test/Jacobian/Pointers.C +++ b/test/Jacobian/Pointers.C @@ -17,6 +17,8 @@ void nonMemFn(double i, double j, double* out) { // CHECK-NEXT: jacobianMatrix[3UL] += 1; // CHECK-NEXT: jacobianMatrix[0UL] += 1; // CHECK-NEXT: } +// XFAIL: target={{i586.*}} + #define NON_MEM_FN_TEST(var)\ res[0]=res[1]=res[2]=res[3]=0;\ diff --git a/test/Jacobian/TemplateFunctors.C b/test/Jacobian/TemplateFunctors.C index fa63cec70..9993b7ba3 100644 --- a/test/Jacobian/TemplateFunctors.C +++ b/test/Jacobian/TemplateFunctors.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -oTemplateFunctors.out // RUN: ./TemplateFunctors.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Jacobian/constexprTest.C b/test/Jacobian/constexprTest.C index de801af95..1e8141065 100644 --- a/test/Jacobian/constexprTest.C +++ b/test/Jacobian/constexprTest.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -std=c++14 -oconstexprTest.out // RUN: ./constexprTest.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Jacobian/testUtility.C b/test/Jacobian/testUtility.C index bd32bc6c7..516ce4730 100644 --- a/test/Jacobian/testUtility.C +++ b/test/Jacobian/testUtility.C @@ -3,6 +3,7 @@ // RUN: %cladclang -Xclang -plugin-arg-clad -Xclang -enable-tbr %s -I%S/../../include -otestUtility.out // RUN: ./testUtility.out | FileCheck -check-prefix=CHECK-EXEC %s // CHECK-NOT: {{.*error|warning|note:.*}} +// XFAIL: target={{i586.*}} #include "clad/Differentiator/Differentiator.h" diff --git a/test/Misc/RunDemos.C b/test/Misc/RunDemos.C index 3830821d7..c72587d93 100644 --- a/test/Misc/RunDemos.C +++ b/test/Misc/RunDemos.C @@ -5,6 +5,7 @@ // RUN: %cladclang %S/../../demos/ComputerGraphics/smallpt/SmallPT.cpp -I%S/../../include 2>&1 // XFAIL: asserts +// XFAIL: target={{i586.*}} //-----------------------------------------------------------------------------/ // Demo: Gradient.cpp