]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/internal/obj/s390x: don't crash on invalid instruction
authorIan Lance Taylor <iant@golang.org>
Fri, 7 Dec 2018 15:25:50 +0000 (07:25 -0800)
committerIan Lance Taylor <iant@golang.org>
Fri, 7 Dec 2018 15:43:09 +0000 (15:43 +0000)
I didn't bother with a test as there doesn't seem to be an existing
framework for testing assembler failures, and tests for invalid code
aren't all that interesting.

Fixes #26700

Change-Id: I719410d83527802a09b9d38625954fdb36a3c0f7
Reviewed-on: https://go-review.googlesource.com/c/153177
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Michael Munday <mike.munday@ibm.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/cmd/internal/obj/s390x/asmz.go

index 4e43d2779005570c9d655af5232a862af34beba6..7d49103be6fb602ccfbfa88c7f93accecc9c50e2 100644 (file)
@@ -2618,6 +2618,10 @@ func (c *ctxtz) branchMask(p *obj.Prog) uint32 {
 func (c *ctxtz) asmout(p *obj.Prog, asm *[]byte) {
        o := c.oplook(p)
 
+       if o == nil {
+               return
+       }
+
        switch o.type_ {
        default:
                c.ctxt.Diag("unknown type %d", o.type_)