1/*
2* Copyright (c) 2017, Intel Corporation
3*
4* Permission is hereby granted, free of charge, to any person obtaining a
5* copy of this software and associated documentation files (the "Software"),
6* to deal in the Software without restriction, including without limitation
7* the rights to use, copy, modify, merge, publish, distribute, sublicense,
8* and/or sell copies of the Software, and to permit persons to whom the
9* Software is furnished to do so, subject to the following conditions:
10*
11* The above copyright notice and this permission notice shall be included
12* in all copies or substantial portions of the Software.
13*
14* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
18* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20* OTHER DEALINGS IN THE SOFTWARE.
21*/
22
23L0:
24         mov     (1|M0)                 r22.4<1>:ud    0x1000100:ud
25         mov     (4|M0)                 acc0.0<1>:w    0x6420:v
26         add     (4|M0)                 acc0.0<1>:w    acc0.0<4;4,1>:w      0x40:uw
27         shl     (4|M0)                 r22.0<1>:w     acc0.0<4;4,1>:w      0x5:uw
28(W&~f0.1)jmpi    L560
29L80:
30         add     (1|M0)                 a0.0<1>:ud     r23.5<0;1,0>:ud      0x50EB100:ud
31         mov     (8|M0)                 r16.0<1>:ud    r0.0<8;8,1>:ud
32         mov     (1|M0)                 r25.0<1>:ud    0x0:ud
33         and     (1|M0)                 r12.0<1>:ud    r2.1<0;1,0>:ud       0x8000000:ud
34         or      (1|M0)                 r7.7<1>:ud     r7.7<0;1,0>:ud       r12.0<0;1,0>:ud
35         mov     (1|M0)                 r25.7<1>:ud    r7.7<0;1,0>:ud
36         mov     (1|M0)                 r25.1<1>:ud    r7.12<0;1,0>:uw
37         mov     (1|M0)                 r16.2<1>:ud    0x0:ud
38         cmp     (1|M0)     (eq)f1.0    null.0<1>:w    r24.2<0;1,0>:ub      0x1:uw
39(~f1.0)  mov     (1|M0)                 r25.2<1>:f     r10.6<0;1,0>:f
40(f1.0)   mov     (1|M0)                 r25.2<1>:f     r10.1<0;1,0>:f
41         mov     (8|M0)                 r17.0<1>:ud    r25.0<8;8,1>:ud
42         send    (1|M0)                 r64:uw         r16:ub               0x2                a0.0
43         mov     (16|M0)                r13.0<1>:uw    r64.0<16;16,1>:uw
44         mov     (16|M0)                r12.0<1>:uw    r65.0<16;16,1>:uw
45         mov     (16|M0)                r64.0<1>:uw    r68.0<16;16,1>:uw
46         mov     (16|M0)                r65.0<1>:uw    r69.0<16;16,1>:uw
47         mov     (16|M0)                r68.0<1>:uw    r13.0<16;16,1>:uw
48         mov     (16|M0)                r69.0<1>:uw    r12.0<16;16,1>:uw
49         mov     (16|M0)                r13.0<1>:uw    r72.0<16;16,1>:uw
50         mov     (16|M0)                r12.0<1>:uw    r73.0<16;16,1>:uw
51         mov     (16|M0)                r72.0<1>:uw    r76.0<16;16,1>:uw
52         mov     (16|M0)                r73.0<1>:uw    r77.0<16;16,1>:uw
53         mov     (16|M0)                r76.0<1>:uw    r13.0<16;16,1>:uw
54         mov     (16|M0)                r77.0<1>:uw    r12.0<16;16,1>:uw
55         mov     (1|M0)                 a0.8<1>:uw     0x800:uw
56         mov     (1|M0)                 a0.9<1>:uw     0x840:uw
57         mov     (1|M0)                 a0.10<1>:uw    0x880:uw
58         mov     (1|M0)                 a0.11<1>:uw    0x8C0:uw
59         add     (4|M0)                 a0.12<1>:uw    a0.8<4;4,1>:uw       0x100:uw
60L560:
61         nop
62