Skip to content

Commit

Permalink
unix: Convert mp_uint_t to size_t in alloc.c.
Browse files Browse the repository at this point in the history
  • Loading branch information
prusnak authored and dpgeorge committed Mar 31, 2017
1 parent 2460888 commit 6e6c01b
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 6 deletions.
6 changes: 3 additions & 3 deletions unix/alloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ typedef struct _mmap_region_t {
struct _mmap_region_t *next;
} mmap_region_t;

void mp_unix_alloc_exec(mp_uint_t min_size, void **ptr, mp_uint_t *size) {
void mp_unix_alloc_exec(size_t min_size, void **ptr, size_t *size) {
// size needs to be a multiple of the page size
*size = (min_size + 0xfff) & (~0xfff);
*ptr = mmap(NULL, *size, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
Expand All @@ -65,7 +65,7 @@ void mp_unix_alloc_exec(mp_uint_t min_size, void **ptr, mp_uint_t *size) {
MP_STATE_VM(mmap_region_head) = rg;
}

void mp_unix_free_exec(void *ptr, mp_uint_t size) {
void mp_unix_free_exec(void *ptr, size_t size) {
munmap(ptr, size);

// unlink the mmap'd region from the list
Expand Down Expand Up @@ -93,7 +93,7 @@ void *ffi_closure_alloc(size_t size, void **code);
void ffi_closure_free(void *ptr);

void *ffi_closure_alloc(size_t size, void **code) {
mp_uint_t dummy;
size_t dummy;
mp_unix_alloc_exec(size, code, &dummy);
return *code;
}
Expand Down
8 changes: 5 additions & 3 deletions unix/mpconfigport.h
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,9 @@ extern const struct _mp_obj_module_t mp_module_jni;

// type definitions for the specific machine

// For size_t and ssize_t
#include <unistd.h>

// assume that if we already defined the obj repr then we also defined types
#ifndef MICROPY_OBJ_REPR
#ifdef __LP64__
Expand All @@ -239,8 +242,8 @@ typedef long long mp_off_t;
typedef long mp_off_t;
#endif

void mp_unix_alloc_exec(mp_uint_t min_size, void** ptr, mp_uint_t *size);
void mp_unix_free_exec(void *ptr, mp_uint_t size);
void mp_unix_alloc_exec(size_t min_size, void** ptr, size_t *size);
void mp_unix_free_exec(void *ptr, size_t size);
void mp_unix_mark_exec(void);
#define MP_PLAT_ALLOC_EXEC(min_size, ptr, size) mp_unix_alloc_exec(min_size, ptr, size)
#define MP_PLAT_FREE_EXEC(ptr, size) mp_unix_free_exec(ptr, size)
Expand All @@ -253,7 +256,6 @@ void mp_unix_mark_exec(void);
#if MICROPY_PY_OS_DUPTERM
#define MP_PLAT_PRINT_STRN(str, len) mp_hal_stdout_tx_strn_cooked(str, len)
#else
#include <unistd.h>
#define MP_PLAT_PRINT_STRN(str, len) do { ssize_t ret = write(1, str, len); (void)ret; } while (0)
#endif

Expand Down

0 comments on commit 6e6c01b

Please sign in to comment.