eggos
eggos copied to clipboard
draft PR for gaining insight into what is needed for Go 1.17 calling conventions; DO NOT MERGE
For context, see the detailed commit messages of:
- 8cdbd4ff30be64efc808477333ff6bc8ae12bc2a: kernel: invoke sseInit and initFakeFS from rt0 to handle
function wrappers of Go 1.17 - ef26ff142208bf3a1e93e100a1952ce3647b7785: kernel: skip return address of
function wrapper in trapret before IRET instruction
NOTE: this is a draft PR to gain intuition into the problem domain and is not intended to be commited into eggos. DO NOT MERGE.
NOTE: commit ef26ff142208bf3a1e93e100a1952ce3647b7785 is incompatible with Go versions prior to Go 1.17. In particular, it will not work with Go 1.16. A proper solution should handle both!
Updates icexin/eggos#100.