kit

kit
git clone https://git.ryansepassi.com/git/kit.git
Log | Files | Refs | README

rv64_atomic_widths_orders.rv32.skip (468B)


      1 This rv64-targeted case exercises 64-bit atomics through `long`, relying on long being 64-bit (LP64) so i64_loc can hold values like 0x100000000. On rv32 ILP32 long is 32-bit: the store of the long long literal 0x100000000L truncates to 0, so the != comparison against the untruncated 64-bit literal fails and the case returns 9 (kit and clang agree). rv32's 32-bit atomic codegen (lr.w/sc.w, amoswap.w/amoadd.w, CAS) is covered by builtin_06..25, which pass on rv32.