[ydl-gen] String instructions emulation on PPC970MP
Hello, I'm using a Power Station as a build machine to generate code for amcc440 cpu using gcc 4.4 with option -mcpu=440fp. Since this release of gcc, I notice that code is generated with string instructions which are not supported by Power Station cpu, and then, it makes build failed if a newly built binary needs to be run for a next build step. Is there a way to emulate those instructions on a Power Station (which currently runs YDL 6.0) Best regards Patrice ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
[ydl-gen] Απάντηση διακοπών
Hey ,friendI find a site to sell electronic products with very good price. Laptop ,iPhone even Motorcycle are very popular .their products are original quality with very low price as wholesale business supplier.They also can do retail business for end user now. maybe it is fit for your business . if you like you can contact them : www.famuch.com E-mail: fam...@vip.188.comMsn : famu...@hotmail.com___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
Re: [ydl-gen] String instructions emulation on PPC970MP
On Wed, Dec 9, 2009 at 12:08 AM, Patrice B pbfwdl...@gmail.com wrote: Hello, I'm using a Power Station as a build machine to generate code for amcc440 cpu using gcc 4.4 with option -mcpu=440fp. Since this release of gcc, I notice that code is generated with string instructions which are not supported by Power Station cpu, and then, it makes build failed if a newly built binary needs to be run for a next build step. Is there a way to emulate those instructions on a Power Station (which currently runs YDL 6.0) Hmm... It looks like you're probably attempting to build a 440 gcc native binary to run on your 970s. I think from what you're describing, when it bootstraps it dies. I think you may well have to unfortunately build a cross compiler. I have not actually done this in reality but I believe there are a few guides out there. I think it's a matter of building with the right --target flag, but it's possibly more complicated. Found this which looks promising (I've been thinking of shifting my ps3 compilation to my x86 boxen - I'll tell you how that goes) http://vmlinux.org/crash/mirror/www.objsw.com/CrossGCC/FAQ-4.html Hope this helps pointing you in the right dir. Best regards Patrice ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com' Robert Spykerman -- chown -R us ./base ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
Re: [ydl-gen] String instructions emulation on PPC970MP
On Wed, Dec 9, 2009 at 12:08 AM, Patrice B pbfwdl...@gmail.com wrote: Hello, I'm using a Power Station as a build machine to generate code for amcc440 cpu using gcc 4.4 with option -mcpu=440fp. Since this release of gcc, I notice that code is generated with string instructions which are not supported by Power Station cpu, and then, it makes build failed if a newly built binary needs to be run for a next build step. Is there a way to emulate those instructions on a Power Station (which currently runs YDL 6.0). Hmm.. one other solution I thought of is to try this on your 970 gcc. -mcpu=440fp and -mno-dlmzb I had to do a bit of googling, these are the instructions you mean? Because I think the 'regular string' multiload instructions (ie load contiguous registers from a contiguous block of mem) are common to most powerpcs now, even the 440 I believe. The 970/cell certainly has it. The other thing is to try is possibly -mcpu=common and -mtune=440fp That way /maybe/ you get just the 'common' set of instructions used and the scheduling tuned for a 440fp. Worth a try I reckon. But of course, other important issues could be the call convention / ABI / endedness etc. That I do not know about on your target. Maybe a cross compiler is the better solution. Best regards Patrice Robert Spykerman -- chown -R us ./base ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
Re: [ydl-gen] String instructions emulation on PPC970MP
Hi Patrice: I did a little digging and came across the following explanation from IBM which explains that the CPU you are coding for (amcc440) requires a specific Linux capable of the following: In versions 2.6.26 and earlier of the Linux kernel, the code did not properly clear reserved bits 11 - 15 in word two of a Translation Lookaside Buffer (TLB) entry. These bits need to be set to zero as documented in the respective user’s manuals to avoid a degradation in performance. A change was included in Linux kernel version 2.6.27 which will clear reserved bits 11 - 15 bits in the finish_tlb_load function. With these bits automatically cleared, inadvertent performance degradation will be avoided. Users of the PPC440x6 and all 464 processor cores should use Linux kernel version 2.6.27 or later. You can read the document for yourself here: https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/6F95C69A2ED9AE73002575AF005B6E4E YDL 6.2 does use kernel 2.6.27 (see here: http://www.fixstars.com/en/products/ydl/installed.html) however make sure that the settings recommended by IBM are in effect for the amcc440. However, that would mean that you are directly coding for that cpu not the native 970MP which comprises the PowerStation which would explain the problems you are reporting. IBM does have a document explaining coding for the 970MP (which are the native cpus within the PowerStation) and the Linux parameters they recommend. That document is here: https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/A0C294269DB8D1EC87256FF9004FC54C These are just preliminary references, of course, but I thought the information could be a useful start for you. As for acquiring more details, you may have to confer with someone at Fixstars. All the best... On Tue, Dec 8, 2009 at 8:08 AM, Patrice B pbfwdl...@gmail.com wrote: Hello, I'm using a Power Station as a build machine to generate code for amcc440 cpu using gcc 4.4 with option -mcpu=440fp. Since this release of gcc, I notice that code is generated with string instructions which are not supported by Power Station cpu, and then, it makes build failed if a newly built binary needs to be run for a next build step. Is there a way to emulate those instructions on a Power Station (which currently runs YDL 6.0) Best regards Patrice ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com' -- = Refranes/Popular sayings: The Taino say: No hay mal que por bien no venga. There is no evil out of which good cannot blossom. ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
Re: [ydl-gen] String instructions emulation on PPC970MP
On Wed, Dec 9, 2009 at 12:08 AM, Patrice B pbfwdl...@gmail.com wrote: ... Is there a way to emulate those instructions on a Power Station (which currently runs YDL 6.0) ... Eh, sorry, was suggesting work-arounds, didn't address your direct question... I suppose it is possible to emulate in theory. I believe all powerpcs will generate an exception when they attempt to execute an invalid instruction that does not translate to the equivalent of a NOP. I guess it is possible in theory to get an exception handler written (ie probably within the kernel) to translate dlmzb and related string opcodes implemented on the 440 but not the 970. However, I recall something about powerpc's in general that can treat quite a few hex words as NOPs. If this instruction actually translates to a NOP on a 970 it may get a little trickier, but if you're already getting an illegal instruction error, then, maybe an exception handler like that can be written. I do not however know if this is already done, or how easy it will be to do this. Presumably, one has to write the equivalent translation assembly code and then find a way to hook it up to the exception handler that already exists - and find a place for this code to live. And then debug it :) It looks to me like you've got to hack the kernel, if you want to try this, unless someone's already done this. Given the wide variation and differing degrees of implementation of the powerpc instruction set on the various processors, it may not be such idea to try implement some form of a kernel level handler to deal with unimplemented instructions - of course, this is a compromise. Again, perhaps just trying to cross-compile and run the resultant code on the target itself may be the simplest solution (otherwise you could turn off generation of the dlmzb instruction as I suggeested earlier if you want to try and run the code on your 970). What sort of target is this 440 on out of curiosity? I am assuming if you could run prior builds from older gccs it must be some sort of environment not too dissimilar to your build environment? Patrice ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com' Robert Spykerman -- chown -R us ./base ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'
Re: [ydl-gen] Απάντηση διακοπών
I wish there was a way to find spammers like that and put a stop to them. really gets to me as you may have noticed. Again, my apologilies for the language I accidentally posted to this resepectable discussion group. This is the first spammer to post to this list in 11 years. I would not freak out. If it happens again, we can ask the management at Fixstars to remove this person. kai ___ yellowdog-general mailing list - yellowdog-general@lists.fixstars.com Unsuscribe info: http://lists.fixstars.com/mailman/listinfo/yellowdog-general HINT: to Google archives, try 'lt;keywords site:us.fixstars.com'