summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmaan Cheval <amaan.cheval@gmail.com>2018-03-13 21:44:15 +0530
committerJoel Sherrill <joel@rtems.org>2018-03-16 11:01:55 -0500
commitefa0039ee94416e98636ae8228c04b1fafb42c90 (patch)
treee7bcbee1dfa5dc43f2682def9f1c8df29b85a321
parenti386/smp: Have ld use incremental build for appstart.o (diff)
downloadrtems-efa0039ee94416e98636ae8228c04b1fafb42c90.tar.bz2
i386/smp: Export _CPU_SMP_Prepare_start_multitasking as a function
When it's a macro, a function declaration causes a compiler error due to the macro being expanded. Partial log showing error: https://gist.github.com/AmaanC/ab3521141479aa6f61ea25f5d74ebb4d Closes #3331
-rw-r--r--c/src/lib/libbsp/i386/shared/smp/smp-imps.c5
-rw-r--r--cpukit/score/cpu/i386/include/rtems/score/cpu.h3
2 files changed, 6 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/i386/shared/smp/smp-imps.c b/c/src/lib/libbsp/i386/shared/smp/smp-imps.c
index 1ed504ccf9..2ba36804cb 100644
--- a/c/src/lib/libbsp/i386/shared/smp/smp-imps.c
+++ b/c/src/lib/libbsp/i386/shared/smp/smp-imps.c
@@ -804,6 +804,11 @@ uint32_t _CPU_SMP_Initialize( void )
return (uint32_t) imps_probe();
}
+void _CPU_SMP_Prepare_start_multitasking( void )
+{
+ /* Do nothing */
+}
+
bool _CPU_SMP_Start_processor( uint32_t cpu_index )
{
(void) cpu_index;
diff --git a/cpukit/score/cpu/i386/include/rtems/score/cpu.h b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
index 311a781955..777439c6e0 100644
--- a/cpukit/score/cpu/i386/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
@@ -473,8 +473,7 @@ void _CPU_Context_Initialize(
void _CPU_SMP_Finalize_initialization( uint32_t cpu_count );
- /* Nothing to do */
- #define _CPU_SMP_Prepare_start_multitasking() do { } while ( 0 )
+ void _CPU_SMP_Prepare_start_multitasking( void );
uint32_t _CPU_SMP_Get_current_processor( void );