gcwnow / buildroot

Buildroot customized for the GCW0
GNU General Public License v2.0
36 stars 46 forks source link

MXU MIPS instruction set extension #20

Open mmcco opened 9 years ago

mmcco commented 9 years ago

I was wondering, did your project write commit 6c2a690f2829d129c590bd8206f3813d2e28f091? If so, where did you find documentation on the MXU instructions? If not, where did you find the patch?

I've been looking for more information on the ISE, but I've only been able to find the Dingoonity wiki page, jzmedia.h in libjzcommon, mxu_as (that massive Bash script that filters assembly to replace MXU instructions with .word directives), and a few disparate mentions on mailing lists.

mthuurne commented 9 years ago

On Monday 11 May 2015 09:18:53 Michael McConville wrote:

I was wondering, did your project write commit 6c2a690f2829d129c590bd8206f3813d2e28f091? If so, where did you find documentation on the MXU instructions? If not, where did you find the patch?

We didn't write it. Someone found it in a web search, but didn't record where.

I've been looking for more information on the ISE, but I've only been able to find the Dingoonity wiki page, jzmedia.h in libjzcommon, mxu_as (that massive Bash script that filters assembly to replace MXU instructions with .word directives), and a few disparate mentions on mailing lists.

The wiki page was written by me, based on information from mxu_as plus an Ingenic header that emulates some of the instructions in C code and some experiments I ran on a Dingoo A320. There are instructions in mxu_as and/or the header that the JZ4740 in the A320 does not support, so I guess there are multiple generations of MXU and the JZ4770 and JZ4780 might have more instructions.

There are also versions of libjpeg and MPlayer that Ingenic modified to use MXU instructions. I haven't looked at those in detail, but that could be another source of information.

Bye, Maarten