Ish: golang needs MMX

Created on 12 Nov 2018  路  7Comments  路  Source: ish-app/ish

go 1.10.1.-r0 refuses to run stating 'This program can only be run of processors with MMX support'

Steps to reproduce:

  1. apk add go
  2. go

(PS. keep up the good work! I've been wanting something like this for a long time!)

emulator

Most helpful comment

I did it

All 7 comments

Go is on the list.

(PS. thanks!)

@tbodt May I ask when do you plan to support MMX? Maybe we can create a slack channel to talk about what to do to support this. People like me who are interested in this can also contribute to this in spare time:)

@wenmin-wu we have a discord server

What will it take to emulate MMX? I鈥檓 willing to contribute but don鈥檛 know where to start or what we even need. Are features being tracked somewhere? If not, might be a good idea to start doing that in the wiki.

it can definitely be done. Found this post from 2001, we got this guys 馃挭馃徏
https://www-sop.inria.fr/members/Sylvain.Pion/progs/mmx-emu/

I鈥檓 willing to contribute but don鈥檛 know where to start or what we even need.

I don't really know what is needed for go to work. MMX adds 51 instructions, but it's possible go only uses 1 or 2 of those. As for where to start, there's unfortunately not any good documentation for hacking on the emulator, other than "read the code, figure out out how it works, change it." If you're serious about contributing, feel free to reach out to me on Discord or wherever and I'll try and help get you up to speed.

A good first step would be to change the cpuid in emu/cpuid.h to just set the bit that claims MMX is supported, then try running some go programs and seeing what crashes. dmesg after an illegal instruction will tell you the problematic machine code.

Are features being tracked somewhere?

I've been using GitHub issues for that.

www-sop.inria.fr/members/Sylvain.Pion/progs/mmx-emu

I had a look at the code and that might actually work in iSH, as a temporary solution. All it's doing is handling SIGILL.

I did it

w00t! Thanks

Was this page helpful?
0 / 5 - 0 ratings

Related issues

anzhi0708 picture anzhi0708  路  5Comments

wsjyhaozi picture wsjyhaozi  路  4Comments

MasonProtter picture MasonProtter  路  3Comments

fernandotcl picture fernandotcl  路  6Comments

saman1111111 picture saman1111111  路  4Comments