Support for different processor and compiler architectures. More...
#include "arch/cc.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <stdint.h>
#include <inttypes.h>
#include <limits.h>
#include <ctype.h>
Go to the source code of this file.
Macros | |
#define | BYTE_ORDER LITTLE_ENDIAN |
Define the byte order of the system. More... | |
#define | LWIP_PLATFORM_DIAG(x) do {printf x;} while(0) |
Define random number generator function of your system. More... | |
#define | LWIP_PLATFORM_ASSERT(x) |
Platform specific assertion handling. More... | |
#define | LWIP_NO_STDDEF_H 0 |
Define this to 1 in arch/cc.h of your port if you do not want to include stddef.h header to get size_t. More... | |
#define | LWIP_NO_STDINT_H 0 |
Define this to 1 in arch/cc.h of your port if your compiler does not provide the stdint.h header. More... | |
#define | LWIP_NO_INTTYPES_H 0 |
Define this to 1 in arch/cc.h of your port if your compiler does not provide the inttypes.h header. More... | |
#define | LWIP_NO_LIMITS_H 0 |
Define this to 1 in arch/cc.h of your port if your compiler does not provide the limits.h header. More... | |
#define | LWIP_NO_CTYPE_H 0 |
Define this to 1 in arch/cc.h of your port if your compiler does not provide the ctype.h header. More... | |
#define | LWIP_CONST_CAST(target_type, val) ((target_type)((ptrdiff_t)val)) |
C++ const_cast<target_type>(val) equivalent to remove constness from a value (GCC -Wcast-qual) More... | |
#define | LWIP_ALIGNMENT_CAST(target_type, val) LWIP_CONST_CAST(target_type, val) |
Get rid of alignment cast warnings (GCC -Wcast-align) More... | |
#define | LWIP_PTR_NUMERIC_CAST(target_type, val) LWIP_CONST_CAST(target_type, val) |
Get rid of warnings related to pointer-to-numeric and vice-versa casts, e.g. More... | |
#define | LWIP_PACKED_CAST(target_type, val) LWIP_CONST_CAST(target_type, val) |
Avoid warnings/errors related to implicitly casting away packed attributes by doing a explicit cast. More... | |
#define | LWIP_DECLARE_MEMORY_ALIGNED(variable_name, size) u8_t variable_name[LWIP_MEM_ALIGN_BUFFER(size)] |
Allocates a memory buffer of specified size that is of sufficient size to align its start address using LWIP_MEM_ALIGN. More... | |
#define | LWIP_MEM_ALIGN_SIZE(size) (((size) + MEM_ALIGNMENT - 1U) & ~(MEM_ALIGNMENT-1U)) |
Calculate memory size for an aligned buffer - returns the next highest multiple of MEM_ALIGNMENT (e.g. More... | |
#define | LWIP_MEM_ALIGN_BUFFER(size) (((size) + MEM_ALIGNMENT - 1U)) |
Calculate safe memory size for an aligned buffer when using an unaligned type as storage. More... | |
#define | LWIP_MEM_ALIGN(addr) ((void *)(((mem_ptr_t)(addr) + MEM_ALIGNMENT - 1) & ~(mem_ptr_t)(MEM_ALIGNMENT-1))) |
Align a memory pointer to the alignment defined by MEM_ALIGNMENT so that ADDR % MEM_ALIGNMENT == 0. More... | |
#define | PACK_STRUCT_BEGIN |
Packed structs support. More... | |
#define | PACK_STRUCT_END |
Packed structs support. More... | |
#define | PACK_STRUCT_STRUCT |
Packed structs support. More... | |
#define | PACK_STRUCT_FIELD(x) x |
Packed structs support. More... | |
#define | PACK_STRUCT_FLD_8(x) PACK_STRUCT_FIELD(x) |
Packed structs support. More... | |
#define | PACK_STRUCT_FLD_S(x) PACK_STRUCT_FIELD(x) |
Packed structs support. More... | |
#define | LWIP_UNUSED_ARG(x) (void)x |
PACK_STRUCT_USE_INCLUDES==1: Packed structs support using #include files before and after struct to be packed. More... | |
Support for different processor and compiler architectures.
Definition in file arch.h.