On Wed, Apr 9, 2014 at 10:55 AM, Markos Chandras <Markos.Chandras@xxxxxxxxxx> wrote: > I used in fact only R2 devices. I also use R2 specific instructions such as > "ins" and "wsbh". I haven't really considered supporting older ISAs for a > couple of reasons. R2 has been around for a long time so a ~7y old device is > probably R2 capable. Furthermore, I was not sure whether mips32/64R1 devices > are likely to run the latest kernel (and/or use BPF-JIT at all). But I could > easily be wrong. > Having said that, it's possible to support R1 devices but I'd like to avoid > the overhead so a few #ifdefs are needed in the code. My personal preference > is to support R2 in the initial patch, and add R1 support later on (along > with the optimizations I have in mind). As far as I can tell on a first glance, you are only using "wsbh", and only if the device is running little endian. There is code to emit "ins", but it isn't evoked from anywhere. The biggest supplier of linux-running R1 chips is probably Broadcom with its xDSL/GPON SoCs; there are still 4k cores, even (afaik) the newest ones introduced last year. And since they started introducing ARM based variants, the I would assume the chances of them switching to R2 or newer are nil. Luckily they are running in big endian mode, so they should be able to run it even now. That said, I don't see a problem in making it R2 first, then adding R1 support later. Regards Jonas