pass: de-prioritize base pointer in register allocation (#184)
Updates #156
This commit is contained in:
committed by
GitHub
parent
f295bde84c
commit
c32f24fb1e
@@ -11,7 +11,6 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
MOVQ $0x9e77d78aacb8cbcc, CX
|
||||
MOVQ $0x9e77d78aacb8cbcc, DX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
MOVQ $0x9e77d78aacb8cbcc, SI
|
||||
MOVQ $0x9e77d78aacb8cbcc, DI
|
||||
MOVQ $0x9e77d78aacb8cbcc, R8
|
||||
@@ -22,10 +21,10 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
MOVQ $0x9e77d78aacb8cbcc, R13
|
||||
MOVQ $0x9e77d78aacb8cbcc, R14
|
||||
MOVQ $0x9e77d78aacb8cbcc, R15
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
MOVQ $0x9e77d78aacb8cbcc, CX
|
||||
MOVQ $0x9e77d78aacb8cbcc, DX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
MOVQ $0x9e77d78aacb8cbcc, SI
|
||||
MOVQ $0x9e77d78aacb8cbcc, DI
|
||||
MOVQ $0x9e77d78aacb8cbcc, R8
|
||||
@@ -36,10 +35,10 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
MOVQ $0x9e77d78aacb8cbcc, R13
|
||||
MOVQ $0x9e77d78aacb8cbcc, R14
|
||||
MOVQ $0x9e77d78aacb8cbcc, R15
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
MOVQ $0x9e77d78aacb8cbcc, CX
|
||||
MOVQ $0x9e77d78aacb8cbcc, DX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BX
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
MOVQ $0x9e77d78aacb8cbcc, SI
|
||||
MOVQ $0x9e77d78aacb8cbcc, DI
|
||||
MOVQ $0x9e77d78aacb8cbcc, R8
|
||||
@@ -50,26 +49,26 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
MOVQ $0x9e77d78aacb8cbcc, R13
|
||||
MOVQ $0x9e77d78aacb8cbcc, R14
|
||||
MOVQ $0x9e77d78aacb8cbcc, R15
|
||||
MOVQ $0x9e77d78aacb8cbcc, BP
|
||||
|
||||
// Iteration 1.
|
||||
MOVL $0x00000001, CX
|
||||
MOVL $0x00000002, DX
|
||||
MOVL $0x00000003, BX
|
||||
MOVL $0x00000004, BP
|
||||
MOVL $0x00000005, SI
|
||||
MOVL $0x00000006, DI
|
||||
MOVL $0x00000007, R8
|
||||
MOVL $0x00000008, R9
|
||||
MOVL $0x00000009, R10
|
||||
MOVL $0x0000000a, R11
|
||||
MOVL $0x0000000b, R12
|
||||
MOVL $0x0000000c, R13
|
||||
MOVL $0x0000000d, R14
|
||||
MOVL $0x0000000e, R15
|
||||
MOVL $0x00000004, SI
|
||||
MOVL $0x00000005, DI
|
||||
MOVL $0x00000006, R8
|
||||
MOVL $0x00000007, R9
|
||||
MOVL $0x00000008, R10
|
||||
MOVL $0x00000009, R11
|
||||
MOVL $0x0000000a, R12
|
||||
MOVL $0x0000000b, R13
|
||||
MOVL $0x0000000c, R14
|
||||
MOVL $0x0000000d, R15
|
||||
MOVL $0x0000000e, BP
|
||||
ADDQ CX, AX
|
||||
ADDQ DX, AX
|
||||
ADDQ BX, AX
|
||||
ADDQ BP, AX
|
||||
ADDQ SI, AX
|
||||
ADDQ DI, AX
|
||||
ADDQ R8, AX
|
||||
@@ -80,26 +79,26 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
ADDQ R13, AX
|
||||
ADDQ R14, AX
|
||||
ADDQ R15, AX
|
||||
ADDQ BP, AX
|
||||
|
||||
// Iteration 2.
|
||||
MOVL $0x0000000f, CX
|
||||
MOVL $0x00000010, DX
|
||||
MOVL $0x00000011, BX
|
||||
MOVL $0x00000012, BP
|
||||
MOVL $0x00000013, SI
|
||||
MOVL $0x00000014, DI
|
||||
MOVL $0x00000015, R8
|
||||
MOVL $0x00000016, R9
|
||||
MOVL $0x00000017, R10
|
||||
MOVL $0x00000018, R11
|
||||
MOVL $0x00000019, R12
|
||||
MOVL $0x0000001a, R13
|
||||
MOVL $0x0000001b, R14
|
||||
MOVL $0x0000001c, R15
|
||||
MOVL $0x00000012, SI
|
||||
MOVL $0x00000013, DI
|
||||
MOVL $0x00000014, R8
|
||||
MOVL $0x00000015, R9
|
||||
MOVL $0x00000016, R10
|
||||
MOVL $0x00000017, R11
|
||||
MOVL $0x00000018, R12
|
||||
MOVL $0x00000019, R13
|
||||
MOVL $0x0000001a, R14
|
||||
MOVL $0x0000001b, R15
|
||||
MOVL $0x0000001c, BP
|
||||
ADDQ CX, AX
|
||||
ADDQ DX, AX
|
||||
ADDQ BX, AX
|
||||
ADDQ BP, AX
|
||||
ADDQ SI, AX
|
||||
ADDQ DI, AX
|
||||
ADDQ R8, AX
|
||||
@@ -110,26 +109,26 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
ADDQ R13, AX
|
||||
ADDQ R14, AX
|
||||
ADDQ R15, AX
|
||||
ADDQ BP, AX
|
||||
|
||||
// Iteration 3.
|
||||
MOVL $0x0000001d, CX
|
||||
MOVL $0x0000001e, DX
|
||||
MOVL $0x0000001f, BX
|
||||
MOVL $0x00000020, BP
|
||||
MOVL $0x00000021, SI
|
||||
MOVL $0x00000022, DI
|
||||
MOVL $0x00000023, R8
|
||||
MOVL $0x00000024, R9
|
||||
MOVL $0x00000025, R10
|
||||
MOVL $0x00000026, R11
|
||||
MOVL $0x00000027, R12
|
||||
MOVL $0x00000028, R13
|
||||
MOVL $0x00000029, R14
|
||||
MOVL $0x0000002a, R15
|
||||
MOVL $0x00000020, SI
|
||||
MOVL $0x00000021, DI
|
||||
MOVL $0x00000022, R8
|
||||
MOVL $0x00000023, R9
|
||||
MOVL $0x00000024, R10
|
||||
MOVL $0x00000025, R11
|
||||
MOVL $0x00000026, R12
|
||||
MOVL $0x00000027, R13
|
||||
MOVL $0x00000028, R14
|
||||
MOVL $0x00000029, R15
|
||||
MOVL $0x0000002a, BP
|
||||
ADDQ CX, AX
|
||||
ADDQ DX, AX
|
||||
ADDQ BX, AX
|
||||
ADDQ BP, AX
|
||||
ADDQ SI, AX
|
||||
ADDQ DI, AX
|
||||
ADDQ R8, AX
|
||||
@@ -140,6 +139,7 @@ TEXT ·Upper32(SB), NOSPLIT, $8-8
|
||||
ADDQ R13, AX
|
||||
ADDQ R14, AX
|
||||
ADDQ R15, AX
|
||||
ADDQ BP, AX
|
||||
|
||||
// Store result and return.
|
||||
MOVQ AX, ret+0(FP)
|
||||
|
||||
Reference in New Issue
Block a user