60 Commits (master)
 

Author SHA1 Message Date
Avril 3461794a68
Changed ifunc resolver for _jr_resolv to use the `static const` initialiser in the new macro-based constant expression xsubi endianess resolver. The ifunc resolver always had resolved the correct function at compile-time and consists of a single `jmp` into it, this doesn"t change anything but make it consistent with the constant expression resolver"s methods (which do matter for that one.)
3 years ago
Avril 045cb7189b
Added compile-time (macro) determiation of endianess shift needed for jr_state"s bitfield over xsubi. Reduces code size and removes 2 levels of indirection.
3 years ago
Avril bd22305f77
started: Adding read_only access qualifier to params of internal X-TU function protos.
3 years ago
Avril 8eb88a65b4
Added attr retain to dynctors. Dunno if this does anything, but it doesn"t complain and still works.
3 years ago
Avril 4da128e510
Moved dynctor registration into `rng.cpp` (seems to work in *this* TU too. Why not `rng/sm64.cpp` specifically???? very annoying.)
3 years ago
Avril 3165ef13fd
Hack to work arround dynctor not being registered when not defined in `crand.cpp" (no idea why, the symbol exists. looking into it.)
3 years ago
Avril dfb3d74816
Added SM64 engine to C hard-coded new API
3 years ago
Avril 8a0ecc0e32
XXX: Why is sm64"s dynctor not being called?
3 years ago
Avril d38f0ebd62
Cannot register sm64 dyn constructor for some reason...
3 years ago
Avril 86b855bda3
Added seeding interface.
3 years ago
Avril d9e34e7e70
Start: Seeding API
3 years ago
Avril 3ff3db0e3e
C++ iterators are absolute retarded shite. Their ```design""" makes no sense.
3 years ago
Avril b071cbb1ad
Added `nexta[m]` array handling functions.
3 years ago
Avril 5a4b68ab3f
Started implementing next for arrays.
3 years ago
Avril 1cf5ca05b2 Added noexcept to global dtor & ctor
3 years ago
Avril 4b988ba83b Added name-based runtime engine lookup.
3 years ago
Avril ebc16f5638 C API: Added individual primitive types `rng_next_*()`
3 years ago
Avril 12f5e7dd97
Better debugging of test program
3 years ago
Avril 25c86023a9
Fix common.h type alias issue
3 years ago
Avril 9ebf0384a5 C API basic test
3 years ago
Avril 29187574be
C API added
3 years ago
Avril ed1f1d5f03
C API: Start `next` shim
3 years ago
Avril fc70397536
C API: Type spec and flags (start)
3 years ago
Avril af095e2a41
Small cleanup
3 years ago
Avril c38d58b7fe
Rework C API shim. Now bridges: librngxx (main library C++ interface) @ rngxx.hpp -> >|capi-bridge.cpp <-> capi-bridge.h <-> capi.c|> -> rngxx.h
3 years ago
Avril 8cdc9648a0 Merge
3 years ago
Avril b1bed00dcc
Fix header names. Again...
3 years ago
Avril d51eb30b6b
C API start
3 years ago
Avril f193acd2ea
Fixed internal header problems (hopefully...)
3 years ago
Avril 7733ada38b
Fixed some namespace pollution issues
3 years ago
Avril 0ecf0be7a7
Update makefile
3 years ago
Avril aea2c6b837
Merge branch 'lib'
3 years ago
Avril 5b7983154c
Fix internal includes being installed
3 years ago
Avril 54dfb64596
Renamed API header & API header location /include
3 years ago
Avril df0fbadf3b
Reorganised /include
3 years ago
Avril 9fb0030c7a
Compiles for static + shared libraries
3 years ago
Avril 2281a57bc9
Hack to get arround the retarded name-based hiding in derrived class overrides fucking up name base name lookups.
3 years ago
Avril 9b2b2468cc
Why can"t I call Random:: functions from an instance of derrived class crand???
3 years ago
Avril 5f57115683
Vectorised next_bytes(), next_v*().
3 years ago
Avril acc580e031
Random: Added `next_*(min, max)`
3 years ago
Avril 800e0ad13b
<range.h> util::range: Added out-of-place clamp `T clamped(const)` and `T clamped(&&)`.
3 years ago
Avril a9bc96294a
Working util::range type and bounded range-scale API!
3 years ago
Avril 5d69550fff
Fucking hell... First "attempt" at range API... it doesn"t look good :/
3 years ago
Avril 7eaba3c1b3
Added `aligned_ptr<T>::container_address([const] Self&) -> [const] Self*` to offset the overloaded unary & and avoid need of `std::addressof`.
3 years ago
Avril fe55da9a5a
Improved ergonomics for aligned_ptr pointer handling
3 years ago
Avril ed966944b8
Added likeliness annotations to some nullptr checks
3 years ago
Avril ef25f978ff
Added attrs to internal-exported C API header
3 years ago
Avril 595fd74a97
_jr_st_resolv() now takes pointer to the xsub union instead of the whole state.
3 years ago
Avril b35c0f705d
Added internal visibility modifier to internal C APIs
3 years ago
Avril 8e20b86365 crand::_sample() uniformly distributes between 0..1
3 years ago