Michael Ackermann via Tinycc-devel <[email protected]> wrote: > Unrelated to cross-compiling, with regards to 128bit datatype support > this raises a few more questions than answered.
> Now the principle questions would be:
> - why aarch64 got those, and riscv64 hasn't got them (is that specific to
> tcc?)
yes, it's a tcc thing - RISC-V has 32-bit, 64-bit (D), 128-bit (Q) instructions
> - and referring back to the initial post in case of riscv64 why it hasn't got
> uint128_t if i didn't mis-interpret the report
128-bit integer support is "fake" - the gcc int128 tests are skipped, too
see also: source code 'git grep int128':
arm64-gen.c:1351: assert(0); // this path untested but needed for
__uint128_t
include/tccdefs.h:93: /* FIXME, __int128_t is used by setjump */
include/tccdefs.h:94: #define __int128_t struct { unsigned char _dummy[16]
__attribute((aligned(16))); }
include/tccdefs.h:146: /* GCC's __uint128_t appears in some Linux/OSX header
files. Make it a
include/tccdefs.h:148: #define __uint128_t long double
tccdbg.c:45: { VT_QLONG, 16, DW_ATE_signed, "__int128:t6=r6;0;-1;" },
tccdbg.c:46: { VT_QLONG | VT_UNSIGNED, 16, DW_ATE_unsigned, "__int128
unsigned:t7=r7;0;-1;" },
tests/gcctestsuite.sh:74:skip_int128="`grep -Eiw '__int128_t|__uint128_t'
compile/*.c execute/*.c execute/ieee/*.c | cut -d ':' -f1 | cut -d '/' -f2 |
sort -u `"
tests/gcctestsuite.sh:94: skip_me="`echo $skip_builtin $skip_ieee
$skip_complex $skip_int128 $skip_misc $skip_vector | grep -w $base`"
tests/gcctestsuite.sh:133: skip_me="`echo $skip_builtin $skip_ieee
$skip_complex $skip_int128 $skip_misc $skip_vector | grep -w $base`"
signature.asc
Description: PGP signature
_______________________________________________ Tinycc-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/tinycc-devel
