Commits


irc: allow EX_ALLOCA to take a register argument


irc: use `leave` instruction on function return


irc: update TODO


irc: add IR_NOP


irc: add IR_F{EQ,NE,LT,GT,LE,GE}


irc: implement EX_CALL for floats


irc: implement IR_{READ,WRITE} for float types


irc: add DT_{DOUBLE,LDOUBLE}


irc: add EX_{EQ,NE,{U,S}{LT,GT,LE,GE}}


irc: minor refactor


irc: remove EX_F{ADD,SUB,MUL,DIV}


irc: allow EX_SDIV for DT_FLOAT


irc: fix EX_SUB for DT_FLOAT


irc: allow IR_MUL for DT_FLOAT


irc: allow EX_{ADD,SUB} for DT_FLOAT


irc: make load*() work for DT_FLOAT


irc: update TODO;


irc: add EX_F{ADD,SUB,MUL,DIV}


irc: initial support for floats


irc: add float support to lexer


irc: add support for custom sections


irc: add TK_STRING


irc: add pub


irc: add support for negative EX_INT


irc: implement EX_MUL, EX_{U,S}DIV