1/* 2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7.macro INIT 8 cdp p4,#0,c0,c0,c0,#0 9.endm 10.macro ADD0 11 cdp p4,#0,c0,c0,c1,#0 12.endm 13.macro ADD1 14 cdp p4,#1,c0,c0,c1,#0 15.endm 16.macro SUB1 17 cdp p4,#1,c0,c0,c1,#1 18.endm 19.macro SQR0 20 cdp p4,#2,c0,c0,c1,#0 21.endm 22.macro NORM 23 cdp p4,#8,c0,c0,c2,#0 24.endm 25.macro NRDF 26 cdp p4,#8,c0,c0,c2,#1 27.endm 28.macro NRDD 29 cdp p4,#8,c0,c0,c0,#1 30.endm 31.macro NTDC 32 cdp p4,#8,c0,c0,c0,#2 33.endm 34.macro NRDC 35 cdp p4,#8,c0,c0,c0,#3 36.endm 37.macro WXMD rl,rh 38 mcrr p4,#0,\rl,\rh,c0 39.endm 40.macro WYMD rl,rh 41 mcrr p4,#0,\rl,\rh,c1 42.endm 43.macro WEFD rl,rh 44 mcrr p4,#0,\rl,\rh,c2 45.endm 46.macro WXUP rl,rh 47 mcrr p4,#1,\rl,\rh,c0 48.endm 49.macro WYUP rl,rh 50 mcrr p4,#1,\rl,\rh,c1 51.endm 52.macro WXYU rl,rh 53 mcrr p4,#1,\rl,\rh,c2 54.endm 55.macro WXMS rl,rh 56 mcrr p4,#2,\rl,\rh,c0 57.endm 58.macro WXMO rl,rh 59 mcrr p4,#3,\rl,\rh,c0 60.endm 61.macro WXDD rl,rh 62 mcrr p4,#4,\rl,\rh,c0 63.endm 64.macro WXDQ rl,rh 65 mcrr p4,#5,\rl,\rh,c0 66.endm 67.macro WXUC rl,rh 68 mcrr p4,#6,\rl,\rh,c0 69.endm 70.macro WXIC rl,rh 71 mcrr p4,#7,\rl,\rh,c0 72.endm 73.macro WXDC rl,rh 74 mcrr p4,#8,\rl,\rh,c0 75.endm 76.macro WXFC rl,rh 77 mcrr p4,#9,\rl,\rh,c2 78.endm 79.macro WXFM rl,rh 80 mcrr p4,#10,\rl,\rh,c0 81.endm 82.macro WXFD rl,rh 83 mcrr p4,#11,\rl,\rh,c0 84.endm 85.macro WXFQ rl,rh 86 mcrr p4,#12,\rl,\rh,c0 87.endm 88.macro RXVD rt 89 mrc p4,#0,\rt,c0,c0,#0 90.endm 91.macro RCMP rt 92 mrc p4,#0,\rt,c0,c0,#1 93.endm 94.macro RDFA rt 95 mrc p4,#0,\rt,c0,c2,#0 96.endm 97.macro RDFS rt 98 mrc p4,#0,\rt,c0,c2,#1 99.endm 100.macro RDFM rt 101 mrc p4,#0,\rt,c0,c2,#2 102.endm 103.macro RDFD rt 104 mrc p4,#0,\rt,c0,c2,#3 105.endm 106.macro RDFQ rt 107 mrc p4,#0,\rt,c0,c2,#4 108.endm 109.macro RDFG rt 110 mrc p4,#0,\rt,c0,c2,#5 111.endm 112.macro RDIC rt 113 mrc p4,#0,\rt,c0,c3,#0 114.endm 115.macro RDUC rt 116 mrc p4,#0,\rt,c0,c3,#1 117.endm 118.macro RXMD rl,rh 119 mrrc p4,#0,\rl,\rh,c8 120.endm 121.macro RYMD rl,rh 122 mrrc p4,#0,\rl,\rh,c9 123.endm 124.macro REFD rl,rh 125 mrrc p4,#0,\rl,\rh,c10 126.endm 127.macro RXMS rl,rh,s 128 mrrc p4,#\s,\rl,\rh,c4 129.endm 130.macro RYMS rl,rh,s 131 mrrc p4,#\s,\rl,\rh,c5 132.endm 133.macro RXYH rl,rh 134 mrrc p4,#1,\rl,\rh,c1 135.endm 136.macro RYMR rl,rh 137 mrrc p4,#2,\rl,\rh,c1 138.endm 139.macro RXMQ rl,rh 140 mrrc p4,#4,\rl,\rh,c1 141.endm 142.macro RDDA rl,rh 143 mrrc p4,#1,\rl,\rh,c0 144.endm 145.macro RDDS rl,rh 146 mrrc p4,#3,\rl,\rh,c0 147.endm 148.macro RDDM rl,rh 149 mrrc p4,#5,\rl,\rh,c0 150.endm 151.macro RDDD rl,rh 152 mrrc p4,#7,\rl,\rh,c0 153.endm 154.macro RDDQ rl,rh 155 mrrc p4,#9,\rl,\rh,c0 156.endm 157.macro RDDG rl,rh 158 mrrc p4,#11,\rl,\rh,c0 159.endm 160.macro PXVD rt 161 mrc2 p4,#0,\rt,c0,c0,#0 162.endm 163.macro PCMP rt 164 mrc2 p4,#0,\rt,c0,c0,#1 165.endm 166.macro PDFA rt 167 mrc2 p4,#0,\rt,c0,c2,#0 168.endm 169.macro PDFS rt 170 mrc2 p4,#0,\rt,c0,c2,#1 171.endm 172.macro PDFM rt 173 mrc2 p4,#0,\rt,c0,c2,#2 174.endm 175.macro PDFD rt 176 mrc2 p4,#0,\rt,c0,c2,#3 177.endm 178.macro PDFQ rt 179 mrc2 p4,#0,\rt,c0,c2,#4 180.endm 181.macro PDFG rt 182 mrc2 p4,#0,\rt,c0,c2,#5 183.endm 184.macro PDIC rt 185 mrc2 p4,#0,\rt,c0,c3,#0 186.endm 187.macro PDUC rt 188 mrc2 p4,#0,\rt,c0,c3,#1 189.endm 190.macro PXMD rl,rh 191 mrrc2 p4,#0,\rl,\rh,c8 192.endm 193.macro PYMD rl,rh 194 mrrc2 p4,#0,\rl,\rh,c9 195.endm 196.macro PEFD rl,rh 197 mrrc2 p4,#0,\rl,\rh,c10 198.endm 199.macro PXMS rl,rh,s 200 mrrc2 p4,#\s,\rl,\rh,c4 201.endm 202.macro PYMS rl,rh,s 203 mrrc2 p4,#\s,\rl,\rh,c5 204.endm 205.macro PXYH rl,rh 206 mrrc2 p4,#1,\rl,\rh,c1 207.endm 208.macro PYMR rl,rh 209 mrrc2 p4,#2,\rl,\rh,c1 210.endm 211.macro PXMQ rl,rh 212 mrrc2 p4,#4,\rl,\rh,c1 213.endm 214.macro PDDA rl,rh 215 mrrc2 p4,#1,\rl,\rh,c0 216.endm 217.macro PDDS rl,rh 218 mrrc2 p4,#3,\rl,\rh,c0 219.endm 220.macro PDDM rl,rh 221 mrrc2 p4,#5,\rl,\rh,c0 222.endm 223.macro PDDD rl,rh 224 mrrc2 p4,#7,\rl,\rh,c0 225.endm 226.macro PDDQ rl,rh 227 mrrc2 p4,#9,\rl,\rh,c0 228.endm 229.macro PDDG rl,rh 230 mrrc2 p4,#11,\rl,\rh,c0 231.endm 232 233