This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
dev:crosscompiler:backend_arm:register_allocation [2018/12/21 10:00] – [Parameter Passing] ursgraf | dev:crosscompiler:backend_arm:register_allocation [2019/01/24 19:44] – [Locals on the Stack] ursgraf | ||
---|---|---|---|
Line 33: | Line 33: | ||
===== Parameter Passing ===== | ===== Parameter Passing ===== | ||
Parameters are passed in R0..R5 and D1..D6.\\ | Parameters are passed in R0..R5 and D1..D6.\\ | ||
- | In the interface // | + | In the interface // |
+ | |S0|S1|S2|S3|S4|S5|S6|S7|S8|S9| | ||
+ | | D0 || D1 || D2 || D3 || D4 || | ||
+ | | ^^a| ^ b ^^c| ^ d ^^ | ||
===== Locals on the Stack ===== | ===== Locals on the Stack ===== | ||
Line 55: | Line 57: | ||
+ | When dividing numbers of type long, a large number of auxiliary registers are necessary. For these cases the register allocation is run with a reduced register set with the same reserved registers as above given above. |