Florian Smeets wrote this message on Sat, Mar 01, 2014 at 16:28 +0100: > On 01/03/14 02:16, John-Mark Gurney wrote: > > Dimitry Andric wrote this message on Fri, Feb 28, 2014 at 20:22 +0100: > >> > >> For building the sparc64 kernel, there is one open issue left, which is > >> that sys/sparc64/include/pcpu.h uses global register variables, and this > >> is not supported by clang. A preliminary patch for this is attached, > >> but it may or may not blow up your system, please beware! > >> > >> The patch changes the pcpu and curpcb global register variables into > >> inline functions, similar to what is done on other architectures. > >> However, the current approach is not optimal, and the emitted code is > >> slightly different from what gcc outputs. Any improvements to this > >> patch are greatly appreciated! > >> > >> Last but not least, thanks go out to Roman Divacky for his work with > >> llvm/clang upstream in getting the sparc64 backend into shape. > > > > Ok, I have a new pcpu patch to try. I have only compile tested it. > > > > It is available here: > > https://www.funkthat.com/~jmg/sparc64.pcpu.patch > > > > I've also attached it. > > > > Craig, do you mind testing it? > > > > My machine doesn't boot with this patch. > > OK boot -v > Booting... > jumping to kernel entry at 0xc0088000. > OF_panic: sparc64_init: cannot find boot CPU node > Program terminated > {1} ok > > I'm now going to try the version that dim sent. Does it boot w/o the patch? Is this a clang built loader/kernel or a gcc built loader/kernel that you tried the patch on? >From a quick look at the code, it doesn't look like my patch would have effected this part of the kernel... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."Received on Sat Mar 01 2014 - 18:52:01 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:47 UTC