[OpenBIOS] Tokenizer (fcode-utils 1.0.2) support for 64-bit constants.
segher at kernel.crashing.org
Sat Apr 18 12:51:40 CEST 2009
> I think 64bit constants won't work on architectures with a 32bit
> cell size, so FCode using them will not be platform independent.
An FCode driver can check for 64-bit support at runtime and skip over
some code if it's not there.
> Can you give a usage example of 64bit constants? I would assume
> it's not BARs as those can be read from PCI config space?
Some devices have 64-bit MMIO registers that should not be accessed as
(pairs of) 32-bit registers.
> What's the expected output of the tokenizer? put two 32bit
> constants on the stack, shift one by 32bit and OR them?
32-bit-const-1 32-bit-const-2 lxjoin
Note that 32-bit consts are sign-extended on 64-bit systems.
> To be sure, we could add a command line option for enabling 64bit
> constants support and print a warning or an error in case it is not
> set. Does that sound reasonable?
Sure. Error please.
More information about the OpenBIOS