fix cu_memcmp on x86_64
This commit is contained in:
parent
17bbc4af49
commit
a0aa466054
3 changed files with 11 additions and 8 deletions
|
|
@ -24,7 +24,7 @@ set(SOURCES
|
||||||
heap.c
|
heap.c
|
||||||
)
|
)
|
||||||
|
|
||||||
set(ARCHITECTURE "SuperH4" CACHE STRING "cutil target architecture")
|
set(ARCHITECTURE "x86_64" CACHE STRING "cutil target architecture")
|
||||||
|
|
||||||
set(ARM_PROCESSOR "cortex-m4" CACHE STRING "cutil ARM processor")
|
set(ARM_PROCESSOR "cortex-m4" CACHE STRING "cutil ARM processor")
|
||||||
set(ARM_PROFILE "a" CACHE STRING "cutil ARM architecture profile")
|
set(ARM_PROFILE "a" CACHE STRING "cutil ARM architecture profile")
|
||||||
|
|
@ -45,13 +45,15 @@ if ("${ARCHITECTURE}" MATCHES "ARM*")
|
||||||
elseif("${ARCHITECTURE}" MATCHES "SuperH4")
|
elseif("${ARCHITECTURE}" MATCHES "SuperH4")
|
||||||
set(CUSTOM_STDLIB "/opt/sh4-platform/lib" CACHE STRING "custom stdlib path")
|
set(CUSTOM_STDLIB "/opt/sh4-platform/lib" CACHE STRING "custom stdlib path")
|
||||||
add_compile_options("-m4")
|
add_compile_options("-m4")
|
||||||
|
else()
|
||||||
|
set(CUSTOM_STDLIB "" CACHE STRING "custom stdlib path")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(cutil STATIC ${SOURCES} ${HEADERS}
|
add_library(cutil STATIC ${SOURCES} ${HEADERS}
|
||||||
"arch/${ARCHITECTURE}.S"
|
"arch/${ARCHITECTURE}.S"
|
||||||
)
|
)
|
||||||
|
|
||||||
option(NOSTDLIB "compile cutil without stdlib" ON)
|
option(NOSTDLIB "compile cutil without stdlib" OFF)
|
||||||
option(STATIC "compile test static" OFF)
|
option(STATIC "compile test static" OFF)
|
||||||
if (NOSTDLIB)
|
if (NOSTDLIB)
|
||||||
target_compile_definitions(cutil PRIVATE CUTIL_NOSTDLIB)
|
target_compile_definitions(cutil PRIVATE CUTIL_NOSTDLIB)
|
||||||
|
|
|
||||||
9
cutil.c
9
cutil.c
|
|
@ -1,9 +1,10 @@
|
||||||
#include "cutil.h"
|
#include "cutil.h"
|
||||||
#include "endian.h"
|
#include "endian.h"
|
||||||
|
#include "heap.h"
|
||||||
|
|
||||||
|
mheap_t cu_heap;
|
||||||
|
|
||||||
#ifdef CUTIL_NOSTDLIB
|
#ifdef CUTIL_NOSTDLIB
|
||||||
# include "heap.h"
|
|
||||||
mheap_t cu_heap;
|
|
||||||
|
|
||||||
void* _cu_malloc(size_t size)
|
void* _cu_malloc(size_t size)
|
||||||
{
|
{
|
||||||
|
|
@ -29,7 +30,7 @@ void (*cu_free)(void*) = _cu_free;
|
||||||
void* (*cu_memset)(void*,int,size_t) = _cu_memset;
|
void* (*cu_memset)(void*,int,size_t) = _cu_memset;
|
||||||
void* (*cu_memcpy)(void*,const void*,size_t) = _cu_memcpy;
|
void* (*cu_memcpy)(void*,const void*,size_t) = _cu_memcpy;
|
||||||
void* (*cu_memmove)(void*,const void*,size_t) = _cu_memmove;
|
void* (*cu_memmove)(void*,const void*,size_t) = _cu_memmove;
|
||||||
void* (*cu_memcmp)(const void*,const void*, size_t) = _cu_memcmp;
|
int (*cu_memcmp)(const void*,const void*, size_t) = _cu_memcmp;
|
||||||
|
|
||||||
void cutil_init(void* heap, size_t size)
|
void cutil_init(void* heap, size_t size)
|
||||||
{
|
{
|
||||||
|
|
@ -46,7 +47,7 @@ void (*cu_free)(void*) = free;
|
||||||
void* (*cu_memset)(void*,int,size_t) = memset;
|
void* (*cu_memset)(void*,int,size_t) = memset;
|
||||||
void* (*cu_memcpy)(void*,const void*,size_t) = memcpy;
|
void* (*cu_memcpy)(void*,const void*,size_t) = memcpy;
|
||||||
void* (*cu_memmove)(void*,const void*,size_t) = memmove;
|
void* (*cu_memmove)(void*,const void*,size_t) = memmove;
|
||||||
void* (*cu_memcmp)(const void*,const void*, size_t) = memcmp;
|
int (*cu_memcmp)(const void*,const void*, size_t) = memcmp;
|
||||||
|
|
||||||
void cutil_init(void* heap, size_t size)
|
void cutil_init(void* heap, size_t size)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
4
cutil.h
4
cutil.h
|
|
@ -7,7 +7,7 @@
|
||||||
extern void* _cu_memset(void* dst, int val, size_t size);
|
extern void* _cu_memset(void* dst, int val, size_t size);
|
||||||
extern void* _cu_memcpy(void* dst, const void* src, size_t size);
|
extern void* _cu_memcpy(void* dst, const void* src, size_t size);
|
||||||
extern void* _cu_memmove(void* dst, const void* src, size_t size);
|
extern void* _cu_memmove(void* dst, const void* src, size_t size);
|
||||||
extern void* _cu_memcmp(const void* dst, const void* src, size_t size);
|
extern int _cu_memcmp(const void* dst, const void* src, size_t size);
|
||||||
|
|
||||||
void __cu_memmove(void* dst, void* src, size_t size);
|
void __cu_memmove(void* dst, void* src, size_t size);
|
||||||
|
|
||||||
|
|
@ -17,7 +17,7 @@ extern void (*cu_free)(void*);
|
||||||
extern void* (*cu_memset)(void*,int,size_t);
|
extern void* (*cu_memset)(void*,int,size_t);
|
||||||
extern void* (*cu_memcpy)(void*,const void*,size_t);
|
extern void* (*cu_memcpy)(void*,const void*,size_t);
|
||||||
extern void* (*cu_memmove)(void*,const void*,size_t);
|
extern void* (*cu_memmove)(void*,const void*,size_t);
|
||||||
extern void* (*cu_memcmp)(const void*,const void*, size_t);
|
extern int (*cu_memcmp)(const void*,const void*, size_t);
|
||||||
|
|
||||||
void cutil_init(void* heap, size_t size);
|
void cutil_init(void* heap, size_t size);
|
||||||
void cutil_init();
|
void cutil_init();
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue