Align StackSize and StackAddress for macOS (#674)

This commit is contained in:
Monika Singh 2023-05-10 12:11:52 +05:30 committed by GitHub
parent 153e52b729
commit 9149af9a6f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -61,6 +61,10 @@
#include <sys/times.h>
#include <time.h>
#ifdef __APPLE__
#include <mach/mach_vm.h>
#endif
/* Scheduler includes. */
#include "FreeRTOS.h"
#include "task.h"
@ -146,6 +150,11 @@ portSTACK_TYPE * pxPortInitialiseStack( StackType_t * pxTopOfStack,
pxTopOfStack = ( portSTACK_TYPE * ) thread - 1;
ulStackSize = ( size_t )( pxTopOfStack + 1 - pxEndOfStack ) * sizeof( *pxTopOfStack );
#ifdef __APPLE__
pxEndOfStack = mach_vm_round_page ( pxEndOfStack );
ulStackSize = mach_vm_trunc_page ( ulStackSize );
#endif
thread->pxCode = pxCode;
thread->pvParams = pvParameters;
thread->xDying = pdFALSE;