11e72d8d2Sderaadt /* valloc -- return memory aligned to the page size. */ 21e72d8d2Sderaadt 3*13571821Stholo #ifdef HAVE_CONFIG_H 4*13571821Stholo #include "config.h" 5*13571821Stholo #endif 6*13571821Stholo 7*13571821Stholo #include "system.h" 8*13571821Stholo 91e72d8d2Sderaadt #ifndef HAVE_GETPAGESIZE 101e72d8d2Sderaadt #define getpagesize() 4096 111e72d8d2Sderaadt #endif 121e72d8d2Sderaadt 13*13571821Stholo void * valloc(bytes)141e72d8d2Sderaadtvalloc (bytes) 15*13571821Stholo size_t bytes; 161e72d8d2Sderaadt { 171e72d8d2Sderaadt long pagesize; 181e72d8d2Sderaadt char *ret; 191e72d8d2Sderaadt 201e72d8d2Sderaadt pagesize = getpagesize (); 211e72d8d2Sderaadt ret = (char *) malloc (bytes + pagesize - 1); 221e72d8d2Sderaadt if (ret) 231e72d8d2Sderaadt ret = (char *) ((long) (ret + pagesize - 1) &~ (pagesize - 1)); 241e72d8d2Sderaadt return ret; 251e72d8d2Sderaadt } 26