diff options
author | Shenghou Ma <minux.ma@gmail.com> | 2013-06-11 02:02:42 +0800 |
---|---|---|
committer | Shenghou Ma <minux.ma@gmail.com> | 2013-06-11 02:02:42 +0800 |
commit | d95b5a43a17d2df7729e31f130372448739f353f (patch) | |
tree | 6f82fc20128817a122c135b1722e25cca08aac9c /src/cmd | |
parent | cc4fd3209745a3d98c59ee4f996d18ec00dcdcd3 (diff) | |
download | go-d95b5a43a17d2df7729e31f130372448739f353f.tar.gz |
cmd/5l: use guaranteed undefined instruction for UNDEF to match [68]l.
R=golang-dev, dave, rsc
CC=golang-dev
https://codereview.appspot.com/10085050
Diffstat (limited to 'src/cmd')
-rw-r--r-- | src/cmd/5l/asm.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/cmd/5l/asm.c b/src/cmd/5l/asm.c index a1220a38e..808f1030d 100644 --- a/src/cmd/5l/asm.c +++ b/src/cmd/5l/asm.c @@ -1515,11 +1515,9 @@ if(debug['G']) print("%ux: %s: arm %d\n", (uint32)(p->pc), p->from.sym->name, p- // This is supposed to be something that stops execution. // It's not supposed to be reached, ever, but if it is, we'd // like to be able to tell how we got there. Assemble as - // BL $0 - // TODO: Use addrel. - v = (0 - pc) - 8; - o1 = opbra(ABL, C_SCOND_NONE); - o1 |= (v >> 2) & 0xffffff; + // 0xf7fabcfd which is guranteed to raise undefined instruction + // exception. + o1 = 0xf7fabcfd; break; case 97: /* CLZ Rm, Rd */ o1 = oprrr(p->as, p->scond); |