Skip to content

Commit

Permalink
The testing github action is improved with support for more compilers. (
Browse files Browse the repository at this point in the history
#184)

Testing github action with support for AC6, gcc, clang
  • Loading branch information
christophe0606 authored Jun 24, 2024
1 parent c414ac5 commit a9c26d6
Show file tree
Hide file tree
Showing 79 changed files with 10,378 additions and 3,132 deletions.
16 changes: 11 additions & 5 deletions .github/workflows/runtest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ permissions:

jobs:
CI_test_run:
strategy:
fail-fast: false
matrix:
compiler: [AC6, CLANG, GCC]
runs-on: ubuntu-latest

steps:
Expand All @@ -30,6 +34,8 @@ jobs:
- name: Activate vcpkg
uses: ARM-software/cmsis-actions/vcpkg@v1
with:
cache: "-${{ matrix.compiler }}"

- name: Activate Arm tool license
uses: ARM-software/cmsis-actions/armlm@v1
Expand Down Expand Up @@ -59,7 +65,7 @@ jobs:
cd cmsis_build
echo "Load missing pack"
csolution list packs -s test_ac6.csolution.yml -m > required_packs.txt
csolution list packs -s test.csolution.yml -m > required_packs.txt
cat required_packs.txt
cpackget add -a -f required_packs.txt
Expand All @@ -69,18 +75,18 @@ jobs:
cd Testing/cmsis_build
echo "Running tests"
python runall.py -avh $AVH_FVP_PLUGINS/../bin
python runall.py -s -g ${{ matrix.compiler }} -avh $AVH_FVP_PLUGINS/../bin
- name: Upload test report
uses: actions/upload-artifact@v4
with:
name: test-report
path: Testing/cmsis_build/summary.html
name: test-report_${{ matrix.compiler }}
path: Testing/cmsis_build/summary_${{ matrix.compiler }}.html


- name: Check error
run: |
cd Testing/cmsis_build
echo "Checking output..."
test "$(grep "Error" summary.html | wc -l)" -eq 0
test "$(grep "Error" summary_${{ matrix.compiler }}.html | wc -l)" -eq 0
8 changes: 8 additions & 0 deletions Include/arm_math_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,19 @@ extern "C"
#elif defined ( __APPLE_CC__ )
#pragma GCC diagnostic ignored "-Wold-style-cast"

#elif defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-conversion"
#pragma GCC diagnostic ignored "-Wconversion"
#pragma GCC diagnostic ignored "-Wunused-parameter"

#elif defined ( __GNUC__ )
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-conversion"
#pragma GCC diagnostic ignored "-Wconversion"
#pragma GCC diagnostic ignored "-Wunused-parameter"
// Disable some code having issue with GCC
#define __CMSIS_GCC_H

#elif defined ( __ICCARM__ )

Expand Down
3 changes: 3 additions & 0 deletions Testing/FrameworkInclude/Timing.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
#ifndef _TIMING_H_
#define _TIMING_H_

#include "RTE_Components.h"
#include CMSIS_device_header

#include "Test.h"
#include "arm_math_types.h"
#include "arm_math_types_f16.h"
Expand Down
2 changes: 1 addition & 1 deletion Testing/FrameworkSource/Error.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
#include "arm_math_types.h"
#include "arm_math_types_f16.h"
#include "Error.h"

#include <cinttypes>

namespace Client {

Expand Down
56 changes: 0 additions & 56 deletions Testing/FrameworkSource/Timing.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,63 +4,7 @@

#define SYSTICK_INITIAL_VALUE 0x0FFFFFF
static uint32_t startCycles=0;

#if defined ARMCM0
#include "ARMCM0.h"
#elif defined ARMCM0P
#include "ARMCM0plus.h"
#elif defined ARMCM0P_MPU
#include "ARMCM0plus_MPU.h"
#elif defined ARMCM3
#include "ARMCM3.h"
#elif defined ARMCM4
#include "ARMCM4.h"
#elif defined ARMCM4_FP
#include "ARMCM4_FP.h"
#elif defined ARMCM7
#include "ARMCM7.h"
#elif defined ARMCM7_SP
#include "ARMCM7_SP.h"
#elif defined ARMCM7_DP
#include "ARMCM7_DP.h"
#elif defined (ARMCM33)
#include "ARMCM33.h"
#elif defined (ARMCM33_DSP_FP)
#include "ARMCM33_DSP_FP.h"
#elif defined (ARMCM33_DSP_FP_TZ)
#include "ARMCM33_DSP_FP_TZ.h"
#elif defined ARMSC000
#include "ARMSC000.h"
#elif defined ARMSC300
#include "ARMSC300.h"
#elif defined ARMv8MBL
#include "ARMv8MBL.h"
#elif defined ARMv8MML
#include "ARMv8MML.h"
#elif defined ARMv8MML_DSP
#include "ARMv8MML_DSP.h"
#elif defined ARMv8MML_SP
#include "ARMv8MML_SP.h"
#elif defined ARMv8MML_DSP_SP
#include "ARMv8MML_DSP_SP.h"
#elif defined ARMv8MML_DP
#include "ARMv8MML_DP.h"
#elif defined ARMv8MML_DSP_DP
#include "ARMv8MML_DSP_DP.h"
#elif defined ARMv81MML_DSP_DP_MVE_FP
#include "ARMv81MML_DSP_DP_MVE_FP.h"
#elif defined ARMCM55
#include "ARMCM55.h"
#elif defined ARMCM85
#include "ARMCM85.h"
#elif defined SSE300MPS3
#include "SSE300MPS3.h"
#elif defined ARMv7A
/* TODO */
#else
#define NOTIMING
#endif
#endif /* CORTEXM*/

#if defined(CORTEXA) || defined(CORTEXR)
#if !defined(__GNUC_PYTHON__)
Expand Down
1 change: 1 addition & 0 deletions Testing/cmsis_build/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ results*.txt
*.cbuild.yml
*.cbuild-idx.yml
disasm.s
cprj/
Loading

0 comments on commit a9c26d6

Please sign in to comment.