Commit Graph

8 Commits

Author SHA1 Message Date
Elliot Nunn
933bd48f01 Auto-generate per-file function lists 2018-06-30 16:07:38 +08:00
Elliot Nunn
0470029cac Clarify exceptions 2018-06-19 15:06:03 +08:00
Elliot Nunn
6c199998f0 Lots of work on Address Spaces 2018-04-27 21:52:08 +08:00
Elliot Nunn
dd4e2ef845 Reverse PPC-68k context switching (incomplete) 2018-04-15 17:00:11 +08:00
Elliot Nunn
4c0e5221f1 Remove unnecessary static branch hints
These + and - characters in a branch mnemonic can cause the assembler to
produce conditional branch instructions with that hint the branch
predictor. The default for forward branches is -, and for backward
branches is +. If a mnemonic is issued with the opposite sign, then bit
10 of the instruction (the LSB of the BO field) is set.

My long-retired "ppcdisasm" script inserted these hints unconditionally,
despite 98% of them not being required. The code is much cleaner now.

I read in some old MPW release notes that PPCAsm and PPCLink together
exhibit a quirk when linking conditional branches to imported symbols.
PPCAsm always assembles these conditional branches as if they were
forward branches (that is, a + hint will always set the hint bit, and a
- hint will never). I hoped to use this property to divine whether the
NanoKernel was linked from one or many assembly files, but I was
frustrated by the lack of conditional branches between files.
2018-04-15 16:52:14 +08:00
Elliot Nunn
e2e519b863 Remove junk from old disassembler 2018-03-31 16:19:41 +08:00
Elliot Nunn
123c1e4bee Work on the scheduler and interrupt handling code 2018-03-30 10:27:12 +08:00
Elliot Nunn
c5c5b784cb Initial commit 2018-02-18 01:24:10 +08:00