diff options
| author | Josh Bleecher Snyder <josharian@gmail.com> | 2019-02-27 10:14:44 -0800 |
|---|---|---|
| committer | Josh Bleecher Snyder <josharian@gmail.com> | 2019-03-14 00:12:28 +0000 |
| commit | ee1c76dccdfb2a40fb21a7875cccd8fc6d76d7ad (patch) | |
| tree | 10d1a633797c528693228b5fe40779316cdd8e3b /src | |
| parent | 7c04110c5203c4502d4c23f1464acb9f07f8bb6b (diff) | |
| download | go-ee1c76dccdfb2a40fb21a7875cccd8fc6d76d7ad.tar.xz | |
runtime: simplify constant strings in asm
As of CL 163747, we can write arbitrary length strings
in assembly DATA instructions.
Make use of it here to improve readability.
Change-Id: I556279ca893f527874e3b26112c43573834ccd9c
Reviewed-on: https://go-review.googlesource.com/c/go/+/167386
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/runtime/asm_386.s | 12 | ||||
| -rw-r--r-- | src/runtime/asm_amd64.s | 8 |
2 files changed, 5 insertions, 15 deletions
diff --git a/src/runtime/asm_386.s b/src/runtime/asm_386.s index 48a959aad1..51103928b3 100644 --- a/src/runtime/asm_386.s +++ b/src/runtime/asm_386.s @@ -248,16 +248,8 @@ ok: CALL runtime·abort(SB) RET -DATA bad_proc_msg<>+0x00(SB)/8, $"This pro" -DATA bad_proc_msg<>+0x08(SB)/8, $"gram can" -DATA bad_proc_msg<>+0x10(SB)/8, $" only be" -DATA bad_proc_msg<>+0x18(SB)/8, $" run on " -DATA bad_proc_msg<>+0x20(SB)/8, $"processo" -DATA bad_proc_msg<>+0x28(SB)/8, $"rs with " -DATA bad_proc_msg<>+0x30(SB)/8, $"MMX supp" -DATA bad_proc_msg<>+0x38(SB)/4, $"ort." -DATA bad_proc_msg<>+0x3c(SB)/1, $0xa -GLOBL bad_proc_msg<>(SB), RODATA, $0x3d +DATA bad_proc_msg<>+0x00(SB)/61, $"This program can only be run on processors with MMX support.\n" +GLOBL bad_proc_msg<>(SB), RODATA, $61 DATA runtime·mainPC+0(SB)/4,$runtime·main(SB) GLOBL runtime·mainPC(SB),RODATA,$4 diff --git a/src/runtime/asm_amd64.s b/src/runtime/asm_amd64.s index 6339dc0000..85133bf2df 100644 --- a/src/runtime/asm_amd64.s +++ b/src/runtime/asm_amd64.s @@ -1438,10 +1438,8 @@ flush: MOVQ 96(SP), R15 JMP ret -DATA debugCallFrameTooLarge<>+0x00(SB)/8, $"call fra" -DATA debugCallFrameTooLarge<>+0x08(SB)/8, $"me too l" -DATA debugCallFrameTooLarge<>+0x10(SB)/4, $"arge" -GLOBL debugCallFrameTooLarge<>(SB), RODATA, $0x14 // Size duplicated below +DATA debugCallFrameTooLarge<>+0x00(SB)/20, $"call frame too large" +GLOBL debugCallFrameTooLarge<>(SB), RODATA, $20 // Size duplicated below // debugCallV1 is the entry point for debugger-injected function // calls on running goroutines. It informs the runtime that a @@ -1565,7 +1563,7 @@ good: // The frame size is too large. Report the error. MOVQ $debugCallFrameTooLarge<>(SB), AX MOVQ AX, 0(SP) - MOVQ $0x14, 8(SP) + MOVQ $20, 8(SP) // length of debugCallFrameTooLarge string MOVQ $8, AX BYTE $0xcc JMP restore |
