| OLD | NEW |
| (Empty) | |
| 1 @ Copyright (c) 2011 The Native Client Authors. All rights reserved. |
| 2 @ Use of this source code is governed by a BSD-style license that can be |
| 3 @ found in the LICENSE file. |
| 4 |
| 5 @ |
| 6 @ Tests masked and unmasked forms of vector loads. Regression test for |
| 7 @ http://code.google.com/p/nativeclient/issues/detail?id=2129 |
| 8 @ |
| 9 |
| 10 .globl _start |
| 11 _start: |
| 12 |
| 13 .align 4 |
| 14 bundle0: |
| 15 vld2.16 {d10[2],d12[2]}, [r0] @ Unmasked, should fail. |
| 16 |
| 17 bic r0, r0, #0xC0000000 @ r0 is masked here, so |
| 18 vld1.16 {d10-d12}, [r0] @ this should succeed. |
| 19 |
| 20 nop |
| 21 |
| 22 bundle1: |
| 23 bic r0, r0, #0xC0000000 @ r0 is masked here, so |
| 24 vld1.8 {d0}, [r0, :64], r1 @ register postincrement should succeed |
| 25 |
| 26 bic r0, r0, #0xC0000000 @ r0 is masked here, but |
| 27 vld1.8 {d0}, [sp, :64], r1 @ SP+register should fail. |
| 28 |
| 29 bundle2: |
| 30 vld1.8 {d3-d6}, [sp]! @ Pop vectors - should pass. |
| 31 vst1.8 {d3-d6}, [sp]! @ Push (wrong way) vectors - should pass. |
| 32 |
| 33 vld1.8 {d3-d6}, [sp], r12 @ Attempt to update SP without mask - ERROR. |
| 34 vst1.8 {d3-d6}, [sp], r12 @ Same deal. |
| 35 |
| 36 bundle3: |
| 37 vld1.8 {d3-d6}, [sp], r12 @ Attempt to update SP, |
| 38 bic sp, sp, #0xC0000000 @ with mask - should pass. |
| 39 vst1.8 {d3-d6}, [sp], r12 @ Same deal, |
| 40 bic sp, sp, #0xC0000000 @ with mask - should pass. |
| OLD | NEW |