mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
414667b1c9
It's now possible to run commands like: make -j8 m=aarch64 o/aarch64/test/libc/str Which will cross-compile and run the test suites in a qemu-aarch64 binary that's vendored in the third_party/qemu/ folder within your x86_64 build environment.
23 lines
674 B
C
23 lines
674 B
C
#ifndef COSMOPOLITAN_LIBC_STR_TPENC_H_
|
|
#define COSMOPOLITAN_LIBC_STR_TPENC_H_
|
|
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
|
COSMOPOLITAN_C_START_
|
|
|
|
uint64_t _tpenc(uint32_t) pureconst;
|
|
|
|
#if defined(__x86_64__) && defined(__MNO_RED_ZONE__) && defined(__GNUC__) && \
|
|
!defined(__STRICT_ANSI__)
|
|
#define _tpenc(CODE) \
|
|
({ \
|
|
long Edi, Buf; \
|
|
asm("call\t_tpenc" \
|
|
: "=a"(Buf), "=D"(Edi) \
|
|
: "1"((int)(CODE)) \
|
|
: "rcx", "rdx", "cc"); \
|
|
Buf; \
|
|
})
|
|
#endif
|
|
|
|
COSMOPOLITAN_C_END_
|
|
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
|
#endif /* COSMOPOLITAN_LIBC_STR_TPENC_H_ */
|