<tpw_rules>
it only use one register window (0xFFE8) though. and the ABI is kind of meaningless
<OmniMancer1>
Indeed, but disassembly can occur
<tpw_rules>
i'm not sure how you would instruct it to follow returns though
<OmniMancer1>
how do returns work in boneless?
<OmniMancer1>
link registers?
<tpw_rules>
link register, yeah
<OmniMancer1>
that should be fine
<tpw_rules>
but the link register is whatever is convenient for me :D
<tpw_rules>
oh also, there's currently a bug in the assembler where even though the manual says it's verboten for imm[3:] to be nonzero for EXTI instructions, the assembler puts those bits of the immediate there anyway
<OmniMancer1>
so it's a generic JR?
<tpw_rules>
yeah. JAL(reg, target) then JR(reg, offset_from_reg_value)
<OmniMancer1>
I guess it might be able to follow that from dataflow but unsure
<OmniMancer1>
getting instruction formats need to exist first :P
<OmniMancer1>
does anything happen at start of a function in general?
<OmniMancer1>
or subroutine
<tpw_rules>
uuuusually i'm nice about it and use R7. i have this strange compulsion to choose completely unsuitable technology then throw all abstraction and common sense out the window in order to make it do what i need
<tpw_rules>
let me pull up some less bonkers code. i've kind of made an ABI
<tpw_rules>
so that's my abi for a routine which accepts parameters and returns stuff
<OmniMancer1>
so the actual registers that exist in the arch are PC, W, ext13 and the status flags?
<OmniMancer1>
tpw_rules: I meant more things like adjusting the window is definitely a potential function pattern?
<tpw_rules>
i would say yes?
<tpw_rules>
also i'm not sure if ext13 would be considered to exist
emeb has joined ##openfpga
<sorear>
it's like the thumb-1 branch situation
Laksen has joined ##openfpga
<OmniMancer1>
oh and the has ext13 flag of course
<OmniMancer1>
I guess exti works vaguely like a prefix
OmniMancer1 has quit [Quit: Leaving.]
cr1901_modern has quit [Ping timeout: 246 seconds]
X-Scale has quit [Ping timeout: 264 seconds]
X-Scale` has joined ##openfpga
X-Scale` is now known as X-Scale
<whitequark>
exti is precisely a prefix
<whitequark>
intended as such
Bob_Dole has joined ##openfpga
cr1901_modern has joined ##openfpga
Laksen has quit [Quit: Leaving]
cpresser has joined ##openfpga
OmniMancer has joined ##openfpga
<OmniMancer>
wq: I guess boneless doesn't have any exception or trap stuff but the way the manual describes it it's a prefix that is allowed on pretty much anything but will only affect some instructions
<whitequark>
OmniMancer: that's correct yes
<whitequark>
it's a bit like rep in x86
<whitequark>
well
<whitequark>
unless i misremember how that works
espes_ is now known as espes
<OmniMancer>
should it be considered wrong for it to appear in places it does not have any effect?
<tpw_rules>
no, it just doesn't do anything
Asu has quit [Ping timeout: 258 seconds]
Bird|otherbox has quit [Read error: Connection reset by peer]