| Index: src/trusted/validator_x86/testdata/64/stack_regs.test
|
| diff --git a/src/trusted/validator_x86/testdata/64/stack_regs.test b/src/trusted/validator_x86/testdata/64/stack_regs.test
|
| deleted file mode 100644
|
| index d12d0f31edd506decf8f1270566c4e09e9740c27..0000000000000000000000000000000000000000
|
| --- a/src/trusted/validator_x86/testdata/64/stack_regs.test
|
| +++ /dev/null
|
| @@ -1,176 +0,0 @@
|
| -@hex:
|
| - # xchg %esp,%ebp
|
| - 87 e5
|
| - 90
|
| -
|
| - # xchg %rsp,%rbp
|
| - 48 87 e5
|
| -
|
| - # lea (%rbp),%esp
|
| - # add %r15,%rsp
|
| - 8d 65 00
|
| - 4c 01 fc
|
| -@rval:
|
| - VALIDATOR: 0000000000000000: 87 e5 xchg %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to ESP
|
| - VALIDATOR: 0000000000000000: 87 e5 xchg %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 xchg %rbp, %rsp
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 xchg %rbp, %rsp
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking jump targets: 0 to c
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@rvald:
|
| - VALIDATOR: 0000000000000000: 87 e5 xchg %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to ESP
|
| - VALIDATOR: 0000000000000000: 87 e5 xchg %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 xchg %rbp, %rsp
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 xchg %rbp, %rsp
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking block alignment and jump targets: 0 to c
|
| - *** <input> IS UNSAFE ***
|
| -@vd-rval:
|
| - VALIDATOR: 0000000000000000: 87 e5 [P] dontcare %ebp (suz), %esp (suz)
|
| - VALIDATOR: ERROR: Illegal assignment to ESP
|
| - VALIDATOR: 0000000000000000: 87 e5 [P] dontcare %ebp (suz), %esp (suz)
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 [P] dontcare %rbp (suz), %rsp (suz)
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000003: 48 87 e5 [P] dontcare %rbp (suz), %rsp (suz)
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking jump targets: 0 to c
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@dis:
|
| - 0000000000000000: 87 e5 xchg %ebp, %esp
|
| - 0000000000000002: 90 nop
|
| - 0000000000000003: 48 87 e5 xchg %rbp, %rsp
|
| - 0000000000000006: 8d 65 00 lea %esp, [%rbp]
|
| - 0000000000000009: 4c 01 fc add %rsp, %r15
|
| -@vdis:
|
| - 0000000000000000: 87 e5 [P] dontcare %ebp (suz), %esp (suz)
|
| - 0000000000000002: 90 [P] dontcare
|
| - 0000000000000003: 48 87 e5 [P] dontcare %rbp (suz), %rsp (suz)
|
| - 0000000000000006: 8d 65 00 lea %esp, [%rbp]
|
| - 0000000000000009: 4c 01 fc add %rsp, %r15
|
| -@rdfa_output:
|
| - 0: [0] improper %rsp sandboxing
|
| - 2: [0] improper %rbp sandboxing
|
| - 3: [0] error - %bpl or %bp is changed
|
| - 3: [0] error - %spl or %sp is changed
|
| - return code: 1
|
| -@validators_disagree:
|
| - errors reported by rdfa validator but not by old one:
|
| - 0x2 - error recovery
|
| -----------------------------------------------------------------------
|
| -@hex:
|
| - # Wrong order (shoule be (%rbp, %r15) according to ABI)
|
| - # lea (%r15,%rbp,1),%rbp
|
| - 31 e5
|
| - 49 8d 2c 2f
|
| -@rval:
|
| - VALIDATOR: 0000000000000002: 49 8d 2c 2f lea %rbp, [%r15+%rbp*1]
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000000: 31 e5 xor %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: Checking jump targets: 0 to 6
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@rvald:
|
| - VALIDATOR: 0000000000000002: 49 8d 2c 2f lea %rbp, [%r15+%rbp*1]
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000000: 31 e5 xor %ebp, %esp
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: Checking block alignment and jump targets: 0 to 6
|
| - *** <input> IS UNSAFE ***
|
| -@vd-rval:
|
| - VALIDATOR: 0000000000000002: 49 8d 2c 2f lea %rbp, [%r15+%rbp*1]
|
| - VALIDATOR: ERROR: Illegal change to register RBP
|
| - VALIDATOR: 0000000000000000: 31 e5 [P] dontcare %ebp (suz), %esp (u)
|
| - VALIDATOR: ERROR: Illegal assignment to EBP
|
| - VALIDATOR: Checking jump targets: 0 to 6
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@dis:
|
| - 0000000000000000: 31 e5 xor %ebp, %esp
|
| - 0000000000000002: 49 8d 2c 2f lea %rbp, [%r15+%rbp*1]
|
| -@vdis:
|
| - 0000000000000000: 31 e5 [P] dontcare %ebp (suz), %esp (u)
|
| - 0000000000000002: 49 8d 2c 2f lea %rbp, [%r15+%rbp*1]
|
| -@rdfa_output:
|
| - 2: [0] improper %rbp sandboxing
|
| - 2: [0] error - %bpl or %bp is changed
|
| - return code: 1
|
| -@validators_disagree:
|
| - errors reported by old validator but not by rdfa one:
|
| - 0x0 (rdfa reported only 0x2)
|
| -----------------------------------------------------------------------
|
| -@hex:
|
| - # xor %ebp,%esp
|
| - # lea (%rsp,%r15,1),%rsp
|
| - 31 ec
|
| - 4a 8d 24 3c
|
| -
|
| - # xor %esp,%ebp
|
| - # lea (%rbp,%r15,1),%rbp
|
| - 31 e5
|
| - 4a 8d 6c 3d 00
|
| -
|
| - # mov %eax,%eax
|
| - # lea (%r15,%rax,1),%rsp
|
| - 89 c0
|
| - 49 8d 24 07
|
| -
|
| - # mov %eax,%eax
|
| - # lea (%rax,%r15,1),%rsp
|
| - 89 c0
|
| - 4a 8d 24 38
|
| -@rval:
|
| - VALIDATOR: 000000000000000f: 49 8d 24 07 lea %rsp, [%r15+%rax*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: 0000000000000015: 4a 8d 24 38 lea %rsp, [%rax+%r15*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking jump targets: 0 to 19
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@rvald:
|
| - VALIDATOR: 000000000000000f: 49 8d 24 07 lea %rsp, [%r15+%rax*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: 0000000000000015: 4a 8d 24 38 lea %rsp, [%rax+%r15*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking block alignment and jump targets: 0 to 19
|
| - *** <input> IS UNSAFE ***
|
| -@vd-rval:
|
| - VALIDATOR: 000000000000000f: 49 8d 24 07 lea %rsp, [%r15+%rax*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: 0000000000000015: 4a 8d 24 38 lea %rsp, [%rax+%r15*1]
|
| - VALIDATOR: ERROR: Illegal assignment to RSP
|
| - VALIDATOR: Checking jump targets: 0 to 19
|
| - VALIDATOR: Checking that basic blocks are aligned
|
| - *** <input> IS UNSAFE ***
|
| -@dis:
|
| - 0000000000000000: 31 ec xor %esp, %ebp
|
| - 0000000000000002: 4a 8d 24 3c lea %rsp, [%rsp+%r15*1]
|
| - 0000000000000006: 31 e5 xor %ebp, %esp
|
| - 0000000000000008: 4a 8d 6c 3d 00 lea %rbp, [%rbp+%r15*1]
|
| - 000000000000000d: 89 c0 mov %eax, %eax
|
| - 000000000000000f: 49 8d 24 07 lea %rsp, [%r15+%rax*1]
|
| - 0000000000000013: 89 c0 mov %eax, %eax
|
| - 0000000000000015: 4a 8d 24 38 lea %rsp, [%rax+%r15*1]
|
| -@vdis:
|
| - 0000000000000000: 31 ec [P] dontcare %esp (suz), %ebp (u)
|
| - 0000000000000002: 4a 8d 24 3c lea %rsp, [%rsp+%r15*1]
|
| - 0000000000000006: 31 e5 [P] dontcare %ebp (suz), %esp (u)
|
| - 0000000000000008: 4a 8d 6c 3d 00 lea %rbp, [%rbp+%r15*1]
|
| - 000000000000000d: 89 c0 mov %eax, %eax
|
| - 000000000000000f: 49 8d 24 07 lea %rsp, [%r15+%rax*1]
|
| - 0000000000000013: 89 c0 mov %eax, %eax
|
| - 0000000000000015: 4a 8d 24 38 lea %rsp, [%rax+%r15*1]
|
| -@rdfa_output:
|
| - f: [0] error - %spl or %sp is changed
|
| - 15: [0] error - %spl or %sp is changed
|
| - return code: 1
|
|
|