Just checking in to let people know where we are and what remains to do. Below is a list of SSA coverage failures during make.bash, by frequency. Some of these are in progress, like David Chase is working on the float ops.
A bunch of the compound object ops (SLICESTR and friends) should be easier once decomposing (https://go-review.googlesource.com/13683) is in.
42% of functions compiled during make.bash have no unimplemented opcodes. (This does not imply correct output, just that SSA compilation didn't fail.)
Of the 148 std packages in the distribution, 125 test fine using the SSA-generated code, 9 fail (flag, go/doc,...), and 14 have no tests.
I'm working on gcmaps which should make GOGC=off and large initial stacks unnecessary.
3268 SSA unimplemented: spill of flags not implemented yet
1806 SSA unimplemented: unhandled expr SLICEARR
1678 SSA unimplemented: unhandled expr CALLINTER
1441 SSA unimplemented: unhandled stmt RETJMP
1247 SSA unimplemented: unhandled expr EFACE
1031 SSA unimplemented: unhandled expr SLICE
600 SSA unimplemented: unhandled expr SLICESTR
426 SSA unimplemented: unhandled expr APPEND
389 SSA unimplemented: unhandled expr CLOSUREVAR
373 SSA unimplemented: unhandled stmt DEFER
373 SSA unimplemented: unhandled stmt AS2DOTTYPE
195 SSA unimplemented: unhandled expr DOTTYPE
104 SSA unimplemented: local variable buf with class PAUTO,heap unimplemented
84 SSA unimplemented: unhandled binary op NE etype=FLOAT64
64 SSA unimplemented: unhandled expr STRUCTLIT
62 SSA unimplemented: unhandled expr MOD
57 SSA unimplemented: local variable b with class PAUTO,heap unimplemented
55 SSA unimplemented: zero for type float64 not implemented
54 SSA unimplemented: addr: bad op CLOSUREVAR
46 SSA unimplemented: unhandled binary op EQ etype=FLOAT64