mirror of https://github.com/YosysHQ/abc.git
Fixing reported memory alignment issue.
This commit is contained in:
parent
0f22046bcb
commit
c58dd06259
5
Makefile
5
Makefile
|
|
@ -44,7 +44,10 @@ arch_flags : arch_flags.c
|
|||
ARCHFLAGS ?= $(shell $(CC) arch_flags.c -o arch_flags && ./arch_flags)
|
||||
OPTFLAGS ?= -g -O #-DABC_NAMESPACE=xxx
|
||||
|
||||
CFLAGS += -Wall -Wno-unused-function -Wno-write-strings -Wno-sign-compare $(OPTFLAGS) $(ARCHFLAGS) -Isrc
|
||||
CFLAGS += -Wall -Wno-unused-function -Wno-write-strings -Wno-sign-compare $(OPTFLAGS) $(ARCHFLAGS) -Isrc
|
||||
ifneq ($(findstring arm,$(shell uname -m)),)
|
||||
CFLAGS += -DABC_MEMALIGN=4
|
||||
endif
|
||||
|
||||
# Set -Wno-unused-bug-set-variable for GCC 4.6.0 and greater only
|
||||
ifneq ($(or $(findstring gcc,$(CC)),$(findstring g++,$(CC))),)
|
||||
|
|
|
|||
|
|
@ -366,6 +366,10 @@ void Aig_MmFlexStop( Aig_MmFlex_t * p, int fVerbose )
|
|||
char * Aig_MmFlexEntryFetch( Aig_MmFlex_t * p, int nBytes )
|
||||
{
|
||||
char * pTemp;
|
||||
#ifdef ABC_MEMALIGN
|
||||
// extend size to max alignment
|
||||
nBytes += (ABC_MEMALIGN - nBytes % ABC_MEMALIGN) % ABC_MEMALIGN;
|
||||
#endif
|
||||
// check if there are still free entries
|
||||
if ( p->pCurrent == NULL || p->pCurrent + nBytes > p->pEnd )
|
||||
{ // need to allocate more entries
|
||||
|
|
@ -535,6 +539,10 @@ char * Aig_MmStepEntryFetch( Aig_MmStep_t * p, int nBytes )
|
|||
{
|
||||
if ( nBytes == 0 )
|
||||
return NULL;
|
||||
#ifdef ABC_MEMALIGN
|
||||
// extend size to max alignment
|
||||
nBytes += (ABC_MEMALIGN - nBytes % ABC_MEMALIGN) % ABC_MEMALIGN;
|
||||
#endif
|
||||
if ( nBytes > p->nMapSize )
|
||||
{
|
||||
if ( p->nChunks == p->nChunksAlloc )
|
||||
|
|
@ -564,6 +572,10 @@ void Aig_MmStepEntryRecycle( Aig_MmStep_t * p, char * pEntry, int nBytes )
|
|||
{
|
||||
if ( nBytes == 0 )
|
||||
return;
|
||||
#ifdef ABC_MEMALIGN
|
||||
// extend size to max alignment
|
||||
nBytes += (ABC_MEMALIGN - nBytes % ABC_MEMALIGN) % ABC_MEMALIGN;
|
||||
#endif
|
||||
if ( nBytes > p->nMapSize )
|
||||
{
|
||||
// ABC_FREE( pEntry );
|
||||
|
|
|
|||
Loading…
Reference in New Issue