Code style/whitespace cleanup; remove obsolete headers.

And move the MAP_ANON redefinition from py/asmx64.c to unix/alloc.c.
This commit is contained in:
Damien George 2014-09-03 22:47:23 +01:00
parent a669cbc690
commit dda46460ff
6 changed files with 13 additions and 19 deletions

View File

@ -84,16 +84,15 @@ void asm_arm_end_pass(asm_arm_t *as) {
if(as->code_base == NULL) {
assert(0);
}
}
else if(as->pass == ASM_ARM_PASS_EMIT) {
} else if(as->pass == ASM_ARM_PASS_EMIT) {
#ifdef __arm__
// flush I- and D-cache
asm volatile(
asm volatile(
"0:"
"mrc p15, 0, r15, c7, c10, 3\n"
"bne 0b\n"
"mov r0, #0\n"
"mcr p15, 0, r0, c7, c7, 0\n"
"mcr p15, 0, r0, c7, c7, 0\n"
: : : "r0", "cc");
#endif
}

View File

@ -35,15 +35,8 @@
// wrapper around everything in this file
#if MICROPY_EMIT_X64
#include <sys/types.h>
#include <sys/mman.h>
#include "asmx64.h"
#if defined(__OpenBSD__) || defined(__MACH__)
#define MAP_ANONYMOUS MAP_ANON
#endif
/* all offsets are measured in multiples of 8 bytes */
#define WORD_SIZE (8)
@ -164,7 +157,7 @@ void asm_x64_start_pass(asm_x64_t *as, uint pass) {
void asm_x64_end_pass(asm_x64_t *as) {
if (as->pass == ASM_X64_PASS_COMPUTE) {
MP_PLAT_ALLOC_EXEC(as->code_offset, (void**) &as->code_base, &as->code_size);
if(as->code_base == NULL) {
if(as->code_base == NULL) {
assert(0);
}
//printf("code_size: %u\n", as->code_size);

View File

@ -3692,7 +3692,7 @@ mp_obj_t mp_compile(mp_parse_node_t pn, qstr source_file, uint emit_opt, bool is
#elif MICROPY_EMIT_THUMB
emit_native_thumb_free(emit_native);
#elif MICROPY_EMIT_ARM
emit_native_arm_free(emit_native);
emit_native_arm_free(emit_native);
#endif
}
#endif

View File

@ -394,7 +394,7 @@ STATIC void emit_native_end_pass(emit_t *emit) {
void *f = asm_thumb_get_code(emit->as);
mp_uint_t f_len = asm_thumb_get_code_size(emit->as);
#elif N_ARM
void *f = asm_arm_get_code(emit->as);
void *f = asm_arm_get_code(emit->as);
mp_uint_t f_len = asm_arm_get_code_size(emit->as);
#endif

View File

@ -75,7 +75,7 @@ SRC_C = \
file.c \
modsocket.c \
modos.c \
alloc.c \
alloc.c \
$(SRC_MOD)
ifeq ($(UNAME_S),Darwin)

View File

@ -30,8 +30,11 @@
#include "mpconfigport.h"
void mp_unix_alloc_exec(mp_uint_t min_size, void** ptr, mp_uint_t *size)
{
#if defined(__OpenBSD__) || defined(__MACH__)
#define MAP_ANONYMOUS MAP_ANON
#endif
void mp_unix_alloc_exec(mp_uint_t min_size, void **ptr, mp_uint_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);
@ -40,7 +43,6 @@ 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_free_exec(void *ptr, mp_uint_t size) {
munmap(ptr, size);
}