Skip to content

ARM Toolchain update to ARM Compiler 6.11(ARMC6) #9888

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 32 commits into from
Mar 4, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
3956969
RealTek post script fix for ARMC6
SenRamakri Feb 11, 2019
988aba4
ARMc6 build fixed for Nordic targets
SenRamakri Feb 4, 2019
84785ae
Check for __ARMCC_VERSION only
SenRamakri Feb 6, 2019
7b3f30c
Temporarily disable RDA targets to pass CI
SenRamakri Feb 12, 2019
0b54ea2
Enable RDA targets
SenRamakri Feb 14, 2019
5632b94
Temporarily disabling KW24D for AC6
SenRamakri Feb 14, 2019
7aebee0
GR_LYCHEE,RZ_A1H,VK_RZ_A1H: Update to fix ARMC6 build failures
d-kato Feb 5, 2019
0ef1620
Back to the original : "rtx_core_ca.h"
d-kato Feb 5, 2019
0adc7dc
RTX5: Make rtx_core_ca.h cope with compiler in Thumb mode
kjbracey Feb 5, 2019
76f90c2
Add ARMC6 binaries for MTB Cypress targets
Feb 25, 2019
50eb4f9
Build tools changes to support AC6 and AC5
SenRamakri Feb 12, 2019
7490b1c
Api tests modification and uLib related fixes
SenRamakri Feb 19, 2019
8624fdf
Build metadata check added
SenRamakri Feb 20, 2019
65e7651
Fix configuration_store.h to use right toolchain check flags
SenRamakri Feb 20, 2019
41e3329
targets.json changes to select ARMC5 for specific targets
SenRamakri Feb 20, 2019
2008295
Remove unwanted spaces
SenRamakri Feb 21, 2019
378a70c
Fixes for test fails and code style update
SenRamakri Feb 21, 2019
e264640
Adding ARMC6 label for ARMC6 toolchain class
SenRamakri Feb 21, 2019
22da2be
Update uvision exporter to capture ARMC6 as default toolchain
SenRamakri Feb 21, 2019
4e7d34b
Review fixes for uvision exporter,build_api and arm.py
SenRamakri Feb 25, 2019
654f4d9
Modify ARM_STD,ARM_MICRO,ARMC6 constructors to be compatible with old…
SenRamakri Feb 25, 2019
8a8cff7
build_api.py changes to take ARMC5 into account when validating for o…
SenRamakri Feb 25, 2019
8231eba
Make ARMC6 as the default ARM toolchain for MTB targets
SenRamakri Feb 26, 2019
51b1063
Add right toolchains for version 2 toolchain support check
SenRamakri Feb 26, 2019
f8dc7c2
Modify tools to return ARMC5 or ARM for supported toolchain matrix
SenRamakri Feb 27, 2019
7ced068
Fix for review comments and ARMC5 listing added for supported toolcha…
SenRamakri Feb 27, 2019
96c74d4
Changes to use response files(pass includes in a file)
SenRamakri Feb 28, 2019
15cb4a4
Fix compiler flags for ARMC6 in sys stats test
SenRamakri Feb 28, 2019
4d17554
Use ARMC5 for FVP targets
SenRamakri Feb 28, 2019
9967483
Use ARMC5 for Cypress targets and fixes targets.json line duplication
SenRamakri Feb 28, 2019
e1e4456
Fixes for exporters failing with wrong compiler settings
SenRamakri Mar 1, 2019
45c727e
Workaround(recommended by compiler team) for FVP_MPS2 targets to use …
SenRamakri Mar 1, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion TESTS/mbed_platform/stats_sys/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ void test_sys_info()

#if defined(__IAR_SYSTEMS_ICC__)
TEST_ASSERT_EQUAL(IAR, stats.compiler_id);
#elif defined(__CC_ARM)
#elif defined(__ARMCC_VERSION)
TEST_ASSERT_EQUAL(ARM, stats.compiler_id);
#elif defined(__GNUC__)
TEST_ASSERT_EQUAL(GCC_ARM, stats.compiler_id);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ typedef struct _ARM_CFSTORE_STATUS {
ARM_CFSTORE_HANDLE (__name) = (ARM_CFSTORE_HANDLE) (__name##_buf_cFsToRe); \
memset((__name##_buf_cFsToRe), 0, CFSTORE_HANDLE_BUFSIZE)

#if defined __MBED__ && (defined TOOLCHAIN_GCC_ARM || defined TOOLCHAIN_ARMC6)
#if defined __MBED__ && (defined TOOLCHAIN_GCC_ARM || (defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)))
/** @brief Helper macro to swap 2 handles, which is useful for the Find() idiom. */
#define CFSTORE_HANDLE_SWAP(__a_HaNdLe, __b_HaNdLe) \
do{ ARM_CFSTORE_HANDLE __temp_HaNdLe = (__a_HaNdLe); \
Expand All @@ -174,6 +174,7 @@ typedef struct _ARM_CFSTORE_STATUS {
__asm volatile("" ::: "memory"); \
}while(0)


#elif defined __MBED__ && defined TOOLCHAIN_ARM
/** @brief Helper macro to swap 2 handles, which is useful for the Find() idiom. */
#define CFSTORE_HANDLE_SWAP(__a_HaNdLe, __b_HaNdLe) \
Expand Down
8 changes: 6 additions & 2 deletions platform/mbed_retarget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,11 @@ static SingletonPtr<PlatformMutex> _mutex;
# define PREFIX(x) _sys##x
# define OPEN_MAX _SYS_OPEN
# ifdef __MICROLIB
# pragma import(__use_full_stdio)
# if __ARMCC_VERSION >= 6010050
asm(" .global __use_full_stdio\n");
# else
# pragma import(__use_full_stdio)
# endif
# endif

#elif defined(__ICCARM__)
Expand Down Expand Up @@ -1251,7 +1255,7 @@ extern "C" WEAK caddr_t _sbrk(int incr)
/* __HeapLimit is end of heap section */
if (new_heap > (uint32_t) &__HeapLimit) {
errno = ENOMEM;
return (caddr_t) -1;
return (caddr_t) - 1;
}

heap = new_heap;
Expand Down
10 changes: 5 additions & 5 deletions rtos/TARGET_CORTEX/rtx5/RTX/Source/rtx_core_ca.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,26 +104,26 @@ __STATIC_INLINE uint32_t StackOffsetR0 (uint8_t stack_frame) {
/// Get xPSR Register - emulate M profile: SP_usr - (8*4)
/// \return xPSR Register value
#if defined(__CC_ARM)
#pragma push
#pragma arm
static __asm uint32_t __get_PSP (void) {
arm
sub sp, sp, #4
stm sp, {sp}^
pop {r0}
sub r0, r0, #32
bx lr
}
#pragma pop
#else
#ifdef __ICCARM__
__arm
#else
__attribute__((target("arm")))
#endif
__STATIC_INLINE uint32_t __get_PSP (void) {
register uint32_t ret;

__ASM volatile (
#ifndef __ICCARM__
".syntax unified\n\t"
".arm\n\t"
#endif
"sub sp,sp,#4\n\t"
"stm sp,{sp}^\n\t"
"pop {%[ret]}\n\t"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,11 @@ LR_IROM1 MAPPABLE_START MAPPABLE_SIZE {
LR_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load region size_region
ER_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
*(+RO)
}
; NVIC_VECTORS_SIZE Total: 64 vectors = 256 bytes (0x100) to be reserved in RAM
RW_IRAM1 (ZBT_SRAM2_START + NVIC_VECTORS_SIZE) (ZBT_SRAM2_SIZE - NVIC_VECTORS_SIZE) { ; RW data
.ANY (+RW +ZI)
*(+RW +ZI)
}
ARM_LIB_STACK (ZBT_SRAM2_START + ZBT_SRAM2_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ LR_IROM1 MAPPABLE_START MAPPABLE_SIZE {
LR_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load region size_region
ER_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
*(+RO)
}
; NVIC_VECTORS_SIZE Total: 64 vectors = 256 bytes (0x100) to be reserved in RAM
RW_IRAM1 (ZBT_SRAM2_START + NVIC_VECTORS_SIZE) (ZBT_SRAM2_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE) { ; RW data
.ANY (+RW +ZI)
*(+RW +ZI)
}
ARM_LIB_STACK (ZBT_SRAM2_START + ZBT_SRAM2_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ LR_IROM1 MAPPABLE_START MAPPABLE_SIZE {
LR_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load region size_region
ER_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
*(+RO)
}
; NVIC_VECTORS_SIZE Total: 64 vectors = 256 bytes (0x100) to be reserved in RAM
RW_IRAM1 (ZBT_SRAM2_START + NVIC_VECTORS_SIZE) (ZBT_SRAM2_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE) { ; RW data
.ANY (+RW +ZI)
*(+RW +ZI)
}
ARM_LIB_STACK (ZBT_SRAM2_START + ZBT_SRAM2_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ LR_IROM1 MAPPABLE_START MAPPABLE_SIZE {
LR_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load region size_region
ER_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
*(+RO)
}
; NVIC_VECTORS_SIZE Total: 64 vectors = 256 bytes (0x100) to be reserved in RAM
RW_IRAM1 (ZBT_SRAM2_START + NVIC_VECTORS_SIZE) (ZBT_SRAM2_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE) { ; RW data
.ANY (+RW +ZI)
*(+RW +ZI)
}
ARM_LIB_STACK (ZBT_SRAM2_START + ZBT_SRAM2_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ LR_IROM1 MAPPABLE_START MAPPABLE_SIZE {
LR_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load region size_region
ER_IROM2 ZBT_SRAM1_START ZBT_SRAM1_SIZE { ; load address = execution address
*(InRoot$$Sections)
.ANY (+RO)
*(+RO)
}
; NVIC_VECTORS_SIZE Total: 64 vectors = 256 bytes (0x100) to be reserved in RAM
RW_IRAM1 (ZBT_SRAM2_START + NVIC_VECTORS_SIZE) (ZBT_SRAM2_SIZE - NVIC_VECTORS_SIZE - STACK_SIZE) { ; RW data
.ANY (+RW +ZI)
*(+RW +ZI)
}
ARM_LIB_STACK (ZBT_SRAM2_START + ZBT_SRAM2_SIZE) EMPTY - STACK_SIZE { ; Stack region growing down
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ NRF_SECTION_SET_DEF(sdh_ble_observers, nrf_sdh_ble_evt_observer_t, NRF_SDH_BLE_O


//lint -save -e10 -e19 -e40 -e27 Illegal character (0x24)
#if defined(__CC_ARM)
#if defined(__ARMCC_VERSION)
extern uint32_t Image$$RW_IRAM1$$Base;
uint32_t const * const m_ram_start = &Image$$RW_IRAM1$$Base;
#elif defined(__ICCARM__)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ extern "C" {
* param[in] section_name Name of the section.
* @hideinitializer
*/
#if defined(__CC_ARM)
#if defined(__ARMCC_VERSION)
#define NRF_SECTION_START_ADDR(section_name) &CONCAT_2(section_name, $$Base)

#elif defined(__GNUC__)
Expand All @@ -82,7 +82,7 @@ extern "C" {
* @param[in] section_name Name of the section.
* @hideinitializer
*/
#if defined(__CC_ARM)
#if defined(__ARMCC_VERSION)
#define NRF_SECTION_END_ADDR(section_name) &CONCAT_2(section_name, $$Limit)

#elif defined(__GNUC__)
Expand Down Expand Up @@ -111,7 +111,7 @@ extern "C" {
* @warning Data type must be word aligned to prevent padding.
* @hideinitializer
*/
#if defined(__CC_ARM)
#if defined(__ARMCC_VERSION)
#define NRF_SECTION_DEF(section_name, data_type) \
extern data_type * CONCAT_2(section_name, $$Base); \
extern void * CONCAT_2(section_name, $$Limit)
Expand Down Expand Up @@ -140,7 +140,7 @@ extern "C" {
* @param[in] section_var Variable to register in the given section.
* @hideinitializer
*/
#if defined(__CC_ARM)
#if defined(__ARMCC_VERSION)
#define NRF_SECTION_ITEM_REGISTER(section_name, section_var) \
section_var __attribute__ ((section(STRINGIFY(section_name)))) __attribute__((used))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ typedef struct
typedef struct
{
nrf_section_set_t const * p_set; //!< Pointer to the appropriate section set.
#if !defined(__GNUC__) || defined(__CC_ARM)
#if !defined(__GNUC__) || defined(__ARMCC_VERSION)
nrf_section_t const * p_section; //!< Pointer to the selected section.
/**<
* In case of GCC all sections in the set are sorted and
Expand Down

This file was deleted.

Loading