fix keywords
there should probably be logic to handle all identifiers that start with
__ or with _ followed by a capital letter, rather than special-casing a
bunch of stuff, but for now some c23 keywords were missing and when i
first added keywords i added "nullexpr" instead of "nullptr" lol
Signed-off-by: Sebastian <sebastian@sebsite.pw>
fix compilation and update for hlt
Add a missing space to the header
Use __asm__ when available
To avoid exposing symbol mangling
Fix phi
Whoops, thanks seb
Fix shifts
And with that, all but one of the Hare stdlib tests pass. The last
failing one is:
math::fround: Assertion failed: /home/ecs/src/hare/hare/math/fenv+x86_64.ha:114:1
and it's due to clang constant-folding the calculations, with the wrong
rounding mode. I don't feel like fixing that, and it's not like it'll
ever affect anyone, so whatever.
Initialize temporaries
Piece of shit clang optimizer thinks it's smarter than me, fucking
christ
Drop some useless instructions
Not sure how these got in here