/** ******************************************************************************** * @fn _ALG_allocMemory(IALG_MemRec memTab[], Int n) * * @brief This function allocates the specified number of memory blocks with * alignment. * * @param[in] memTab : Array containing the base address * * @param[in] n : Number of Memory instance to be freed * * @return TRUE if allocated else FALSE ******************************************************************************** */ Bool _ALG_allocMemory(IALG_MemRec memTab[], Int n) { Int idx; for (idx = 0; idx < n; idx++) { memTab[idx].base = (void *)myMemalign(memTab[idx].alignment, memTab[idx].size); if (memTab[idx].base == NULL) { _ALG_freeMemory(memTab, idx); return (FALSE); } else { if (0 == idx) { /* As per xdaised standard, memTab[0] is guaranteed to be * initialized to zero. */ memset(memTab[idx].base,0,memTab[idx].size); } } } return (TRUE); }
/** ******************************************************************************** * @fn _ALG_allocMemory(IALG_MemRec memTab[], Int n) * * @brief This function allocates the specified number of memory blocks with * alignment. * * @param[in] memTab : Array containing the base address * * @param[in] n : Number of Memory instance to be freed * * @return TRUE if allocated else FALSE ******************************************************************************** */ Bool _ALG_allocMemory(IALG_MemRec memTab[], Int n) { Int idx; for (idx = 0; idx < n; idx++) { memTab[idx].base = (void *)myMemalign(memTab[idx].alignment, memTab[idx].size); if (memTab[idx].base == NULL) { _ALG_freeMemory(memTab, idx); return (FALSE); } else { /* Nothing to execute*/ } } return (TRUE); }
/* * ======== _ALG_allocMemory ======== */ Bool _ALG1_allocMemory(IALG_MemRec memTab[], Int n) { Int i; for (i = 0; i < n; i++) { #ifdef ON_LINUX memTab[i].base = (void *)CMEM_alloc( memTab[i].size, &memParams); #else memTab[i].base = (void *)myMemalign(memTab[i].alignment, memTab[i].size); #endif if (memTab[i].base == NULL) { _ALG_freeMemory(memTab, i); return (FALSE); } /*------------------------------------------------------------------*/ /* Recommended to work with out memset 0. */ /*------------------------------------------------------------------*/ //memset(memTab[i].base, 0, memTab[i].size); } return (TRUE); }