| Absolute File Name: | /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qmemrotate.cpp | 
| Switch to Source code | Preprocessed file | 
| Line | Source | Count | ||||||
|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||
| 2 | - | |||||||
| 3 | - | |||||||
| 4 | - | |||||||
| 5 | static const int tileSize = 32; | - | ||||||
| 6 | template <class T> | - | ||||||
| 7 | static | - | ||||||
| 8 | inline void qt_memrotate90_cachedRead(const T *src, int w, int h, int sstride, T *dest, | - | ||||||
| 9 | int dstride) | - | ||||||
| 10 | { | - | ||||||
| 11 | const char *s = reinterpret_cast<const char*>(src); | - | ||||||
| 12 | char *d = reinterpret_cast<char*>(dest); | - | ||||||
| 13 |     for (int y = 0; y < h
  | 0 | ||||||
| 14 |         for (int x = w - 1; x >= 0
  | 0 | ||||||
| 15 | T *destline = reinterpret_cast<T *>(d + (w - x - 1) * dstride); | - | ||||||
| 16 | destline[y] = src[x]; | - | ||||||
| 17 |         } never executed:  end of block | 0 | ||||||
| 18 | s += sstride; | - | ||||||
| 19 | src = reinterpret_cast<const T*>(s); | - | ||||||
| 20 |     } never executed:  end of block | 0 | ||||||
| 21 | } never executed:  end of block | 0 | ||||||
| 22 | - | |||||||
| 23 | template <class T> | - | ||||||
| 24 | static | - | ||||||
| 25 | inline void qt_memrotate270_cachedRead(const T *src, int w, int h, int sstride, T *dest, | - | ||||||
| 26 | int dstride) | - | ||||||
| 27 | { | - | ||||||
| 28 | const char *s = reinterpret_cast<const char*>(src); | - | ||||||
| 29 | char *d = reinterpret_cast<char*>(dest); | - | ||||||
| 30 | s += (h - 1) * sstride; | - | ||||||
| 31 |     for (int y = h - 1; y >= 0
  | 0 | ||||||
| 32 | src = reinterpret_cast<const T*>(s); | - | ||||||
| 33 |         for (int x = 0; x < w
  | 0 | ||||||
| 34 | T *destline = reinterpret_cast<T *>(d + x * dstride); | - | ||||||
| 35 | destline[h - y - 1] = src[x]; | - | ||||||
| 36 |         } never executed:  end of block | 0 | ||||||
| 37 | s -= sstride; | - | ||||||
| 38 |     } never executed:  end of block | 0 | ||||||
| 39 | } never executed:  end of block | 0 | ||||||
| 40 | template <class T> | - | ||||||
| 41 | static | - | ||||||
| 42 | inline void qt_memrotate90_tiled(const T *src, int w, int h, int sstride, T *dest, int dstride) | - | ||||||
| 43 | { | - | ||||||
| 44 | sstride /= sizeof(T); | - | ||||||
| 45 | dstride /= sizeof(T); | - | ||||||
| 46 | - | |||||||
| 47 | const int pack = sizeof(quint32) / sizeof(T); | - | ||||||
| 48 | const int unaligned = | - | ||||||
| 49 | qMin(uint((quintptr(dest) & (sizeof(quint32)-1)) / sizeof(T)), uint(h)); | - | ||||||
| 50 | const int restX = w % tileSize; | - | ||||||
| 51 | const int restY = (h - unaligned) % tileSize; | - | ||||||
| 52 | const int unoptimizedY = restY % pack; | - | ||||||
| 53 | const int numTilesX = w / tileSize + (restX > 0); | - | ||||||
| 54 | const int numTilesY = (h - unaligned) / tileSize + (restY >= pack); | - | ||||||
| 55 | - | |||||||
| 56 |     for (int tx = 0; tx < numTilesX
  | 0 | ||||||
| 57 | const int startx = w - tx * tileSize - 1; | - | ||||||
| 58 | const int stopx = qMax(startx - tileSize, 0); | - | ||||||
| 59 | - | |||||||
| 60 |         if (unaligned
  | 0 | ||||||
| 61 |             for (int x = startx; x >= stopx
  | 0 | ||||||
| 62 | T *d = dest + (w - x - 1) * dstride; | - | ||||||
| 63 |                 for (int y = 0; y < unaligned
  | 0 | ||||||
| 64 | *d++ = src[y * sstride + x]; | - | ||||||
| 65 |                 } never executed:  end of block | 0 | ||||||
| 66 |             } never executed:  end of block | 0 | ||||||
| 67 |         } never executed:  end of block | 0 | ||||||
| 68 | - | |||||||
| 69 |         for (int ty = 0; ty < numTilesY
  | 0 | ||||||
| 70 | const int starty = ty * tileSize + unaligned; | - | ||||||
| 71 | const int stopy = qMin(starty + tileSize, h - unoptimizedY); | - | ||||||
| 72 | - | |||||||
| 73 |             for (int x = startx; x >= stopx
  | 0 | ||||||
| 74 | quint32 *d = reinterpret_cast<quint32*>(dest + (w - x - 1) * dstride + starty); | - | ||||||
| 75 |                 for (int y = starty; y < stopy
  | 0 | ||||||
| 76 | quint32 c = src[y * sstride + x]; | - | ||||||
| 77 |                     for (int i = 1; i < pack
  | 0 | ||||||
| 78 | const int shift = (sizeof(int) * 8 / pack * i); | - | ||||||
| 79 | const T color = src[(y + i) * sstride + x]; | - | ||||||
| 80 | c |= color << shift; | - | ||||||
| 81 |                     } never executed:  end of block | 0 | ||||||
| 82 | *d++ = c; | - | ||||||
| 83 |                 } never executed:  end of block | 0 | ||||||
| 84 |             } never executed:  end of block | 0 | ||||||
| 85 |         } never executed:  end of block | 0 | ||||||
| 86 | - | |||||||
| 87 |         if (unoptimizedY
  | 0 | ||||||
| 88 | const int starty = h - unoptimizedY; | - | ||||||
| 89 |             for (int x = startx; x >= stopx
  | 0 | ||||||
| 90 | T *d = dest + (w - x - 1) * dstride + starty; | - | ||||||
| 91 |                 for (int y = starty; y < h
  | 0 | ||||||
| 92 | *d++ = src[y * sstride + x]; | - | ||||||
| 93 |                 } never executed:  end of block | 0 | ||||||
| 94 |             } never executed:  end of block | 0 | ||||||
| 95 |         } never executed:  end of block | 0 | ||||||
| 96 |     } never executed:  end of block | 0 | ||||||
| 97 | } never executed:  end of block | 0 | ||||||
| 98 | - | |||||||
| 99 | template <class T> | - | ||||||
| 100 | static | - | ||||||
| 101 | inline void qt_memrotate90_tiled_unpacked(const T *src, int w, int h, int sstride, T *dest, | - | ||||||
| 102 | int dstride) | - | ||||||
| 103 | { | - | ||||||
| 104 | const int numTilesX = (w + tileSize - 1) / tileSize; | - | ||||||
| 105 | const int numTilesY = (h + tileSize - 1) / tileSize; | - | ||||||
| 106 | - | |||||||
| 107 |     for (int tx = 0; tx < numTilesX
  | 0 | ||||||
| 108 | const int startx = w - tx * tileSize - 1; | - | ||||||
| 109 | const int stopx = qMax(startx - tileSize, 0); | - | ||||||
| 110 | - | |||||||
| 111 |         for (int ty = 0; ty < numTilesY
  | 0 | ||||||
| 112 | const int starty = ty * tileSize; | - | ||||||
| 113 | const int stopy = qMin(starty + tileSize, h); | - | ||||||
| 114 | - | |||||||
| 115 |             for (int x = startx; x >= stopx
  | 0 | ||||||
| 116 | T *d = (T *)((char*)dest + (w - x - 1) * dstride) + starty; | - | ||||||
| 117 | const char *s = (const char*)(src + x) + starty * sstride; | - | ||||||
| 118 |                 for (int y = starty; y < stopy
  | 0 | ||||||
| 119 | *d++ = *(const T *)(s); | - | ||||||
| 120 | s += sstride; | - | ||||||
| 121 |                 } never executed:  end of block | 0 | ||||||
| 122 |             } never executed:  end of block | 0 | ||||||
| 123 |         } never executed:  end of block | 0 | ||||||
| 124 |     } never executed:  end of block | 0 | ||||||
| 125 | } never executed:  end of block | 0 | ||||||
| 126 | - | |||||||
| 127 | template <class T> | - | ||||||
| 128 | static | - | ||||||
| 129 | inline void qt_memrotate270_tiled(const T *src, int w, int h, int sstride, T *dest, int dstride) | - | ||||||
| 130 | { | - | ||||||
| 131 | sstride /= sizeof(T); | - | ||||||
| 132 | dstride /= sizeof(T); | - | ||||||
| 133 | - | |||||||
| 134 | const int pack = sizeof(quint32) / sizeof(T); | - | ||||||
| 135 | const int unaligned = | - | ||||||
| 136 | qMin(uint((long(dest) & (sizeof(quint32)-1)) / sizeof(T)), uint(h)); | - | ||||||
| 137 | const int restX = w % tileSize; | - | ||||||
| 138 | const int restY = (h - unaligned) % tileSize; | - | ||||||
| 139 | const int unoptimizedY = restY % pack; | - | ||||||
| 140 | const int numTilesX = w / tileSize + (restX > 0); | - | ||||||
| 141 | const int numTilesY = (h - unaligned) / tileSize + (restY >= pack); | - | ||||||
| 142 | - | |||||||
| 143 |     for (int tx = 0; tx < numTilesX
  | 0 | ||||||
| 144 | const int startx = tx * tileSize; | - | ||||||
| 145 | const int stopx = qMin(startx + tileSize, w); | - | ||||||
| 146 | - | |||||||
| 147 |         if (unaligned
  | 0 | ||||||
| 148 |             for (int x = startx; x < stopx
  | 0 | ||||||
| 149 | T *d = dest + x * dstride; | - | ||||||
| 150 |                 for (int y = h - 1; y >= h - unaligned
  | 0 | ||||||
| 151 | *d++ = src[y * sstride + x]; | - | ||||||
| 152 |                 } never executed:  end of block | 0 | ||||||
| 153 |             } never executed:  end of block | 0 | ||||||
| 154 |         } never executed:  end of block | 0 | ||||||
| 155 | - | |||||||
| 156 |         for (int ty = 0; ty < numTilesY
  | 0 | ||||||
| 157 | const int starty = h - 1 - unaligned - ty * tileSize; | - | ||||||
| 158 | const int stopy = qMax(starty - tileSize, unoptimizedY); | - | ||||||
| 159 | - | |||||||
| 160 |             for (int x = startx; x < stopx
  | 0 | ||||||
| 161 | quint32 *d = reinterpret_cast<quint32*>(dest + x * dstride | - | ||||||
| 162 | + h - 1 - starty); | - | ||||||
| 163 |                 for (int y = starty; y > stopy
  | 0 | ||||||
| 164 | quint32 c = src[y * sstride + x]; | - | ||||||
| 165 |                     for (int i = 1; i < pack
  | 0 | ||||||
| 166 | const int shift = (sizeof(int) * 8 / pack * i); | - | ||||||
| 167 | const T color = src[(y - i) * sstride + x]; | - | ||||||
| 168 | c |= color << shift; | - | ||||||
| 169 |                     } never executed:  end of block | 0 | ||||||
| 170 | *d++ = c; | - | ||||||
| 171 |                 } never executed:  end of block | 0 | ||||||
| 172 |             } never executed:  end of block | 0 | ||||||
| 173 |         } never executed:  end of block | 0 | ||||||
| 174 |         if (unoptimizedY
  | 0 | ||||||
| 175 | const int starty = unoptimizedY - 1; | - | ||||||
| 176 |             for (int x = startx; x < stopx
  | 0 | ||||||
| 177 | T *d = dest + x * dstride + h - 1 - starty; | - | ||||||
| 178 |                 for (int y = starty; y >= 0
  | 0 | ||||||
| 179 | *d++ = src[y * sstride + x]; | - | ||||||
| 180 |                 } never executed:  end of block | 0 | ||||||
| 181 |             } never executed:  end of block | 0 | ||||||
| 182 |         } never executed:  end of block | 0 | ||||||
| 183 |     } never executed:  end of block | 0 | ||||||
| 184 | } never executed:  end of block | 0 | ||||||
| 185 | - | |||||||
| 186 | template <class T> | - | ||||||
| 187 | static | - | ||||||
| 188 | inline void qt_memrotate270_tiled_unpacked(const T *src, int w, int h, int sstride, T *dest, | - | ||||||
| 189 | int dstride) | - | ||||||
| 190 | { | - | ||||||
| 191 | const int numTilesX = (w + tileSize - 1) / tileSize; | - | ||||||
| 192 | const int numTilesY = (h + tileSize - 1) / tileSize; | - | ||||||
| 193 | - | |||||||
| 194 |     for (int tx = 0; tx < numTilesX
  | 0 | ||||||
| 195 | const int startx = tx * tileSize; | - | ||||||
| 196 | const int stopx = qMin(startx + tileSize, w); | - | ||||||
| 197 | - | |||||||
| 198 |         for (int ty = 0; ty < numTilesY
  | 0 | ||||||
| 199 | const int starty = h - 1 - ty * tileSize; | - | ||||||
| 200 | const int stopy = qMax(starty - tileSize, 0); | - | ||||||
| 201 | - | |||||||
| 202 |             for (int x = startx; x < stopx
  | 0 | ||||||
| 203 | T *d = (T*)((char*)dest + x * dstride) + h - 1 - starty; | - | ||||||
| 204 | const char *s = (const char*)(src + x) + starty * sstride; | - | ||||||
| 205 |                 for (int y = starty; y >= stopy
  | 0 | ||||||
| 206 | *d++ = *(const T*)s; | - | ||||||
| 207 | s -= sstride; | - | ||||||
| 208 |                 } never executed:  end of block | 0 | ||||||
| 209 |             } never executed:  end of block | 0 | ||||||
| 210 |         } never executed:  end of block | 0 | ||||||
| 211 |     } never executed:  end of block | 0 | ||||||
| 212 | } never executed:  end of block | 0 | ||||||
| 213 | - | |||||||
| 214 | - | |||||||
| 215 | - | |||||||
| 216 | template <class T> | - | ||||||
| 217 | static | - | ||||||
| 218 | inline void qt_memrotate90_template(const T *src, int srcWidth, int srcHeight, int srcStride, | - | ||||||
| 219 | T *dest, int dstStride) | - | ||||||
| 220 | { | - | ||||||
| 221 | - | |||||||
| 222 | - | |||||||
| 223 | - | |||||||
| 224 | - | |||||||
| 225 | - | |||||||
| 226 | - | |||||||
| 227 | - | |||||||
| 228 | qt_memrotate90_tiled<T>(src, srcWidth, srcHeight, srcStride, dest, dstStride); | - | ||||||
| 229 | - | |||||||
| 230 | } never executed:  end of block | 0 | ||||||
| 231 | - | |||||||
| 232 | template <class T> | - | ||||||
| 233 | static | - | ||||||
| 234 | inline void qt_memrotate180_template(const T *src, int w, int h, int sstride, T *dest, int dstride) | - | ||||||
| 235 | { | - | ||||||
| 236 | const char *s = (const char*)(src) + (h - 1) * sstride; | - | ||||||
| 237 |     for (int y = h - 1; y >= 0
  | 0 | ||||||
| 238 | T *d = reinterpret_cast<T*>((char *)(dest) + (h - y - 1) * dstride); | - | ||||||
| 239 | src = reinterpret_cast<const T*>(s); | - | ||||||
| 240 |         for (int x = w - 1; x >= 0
  | 0 | ||||||
| 241 | d[w - x - 1] = src[x]; | - | ||||||
| 242 |         } never executed:  end of block | 0 | ||||||
| 243 | s -= sstride; | - | ||||||
| 244 |     } never executed:  end of block | 0 | ||||||
| 245 | } never executed:  end of block | 0 | ||||||
| 246 | - | |||||||
| 247 | template <class T> | - | ||||||
| 248 | static | - | ||||||
| 249 | inline void qt_memrotate270_template(const T *src, int srcWidth, int srcHeight, int srcStride, | - | ||||||
| 250 | T *dest, int dstStride) | - | ||||||
| 251 | { | - | ||||||
| 252 | - | |||||||
| 253 | - | |||||||
| 254 | - | |||||||
| 255 | - | |||||||
| 256 | - | |||||||
| 257 | - | |||||||
| 258 | - | |||||||
| 259 | qt_memrotate270_tiled_unpacked<T>(src, srcWidth, srcHeight, srcStride, dest, dstStride); | - | ||||||
| 260 | - | |||||||
| 261 | } never executed:  end of block | 0 | ||||||
| 262 | - | |||||||
| 263 | template <> | - | ||||||
| 264 | inline void qt_memrotate90_template<quint24>(const quint24 *src, int srcWidth, int srcHeight, | - | ||||||
| 265 | int srcStride, quint24 *dest, int dstStride) | - | ||||||
| 266 | { | - | ||||||
| 267 | qt_memrotate90_tiled_unpacked<quint24>(src, srcWidth, srcHeight, srcStride, dest, dstStride); | - | ||||||
| 268 | - | |||||||
| 269 | } never executed:  end of block | 0 | ||||||
| 270 | __attribute__((visibility("default"))) void qt_memrotate90(const quint32 *src, int w, int h, int sstride, quint32 *dest, int dstride) { qt_memrotate90_template(src, w, h, sstride, dest, dstride); } never executed:   __attribute__((visibility("default"))) void qt_memrotate180(const quint32 *src, int w, int h, int sstride, quint32 *dest, int dstride) { qt_memrotate180_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:   __attribute__((visibility("default"))) void qt_memrotate270(const quint32 *src, int w, int h, int sstride, quint32 *dest, int dstride) { qt_memrotate270_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:  end of block | 0 | ||||||
| 271 | __attribute__((visibility("default"))) void qt_memrotate90(const quint16 *src, int w, int h, int sstride, quint16 *dest, int dstride) { qt_memrotate90_template(src, w, h, sstride, dest, dstride); } never executed:   __attribute__((visibility("default"))) void qt_memrotate180(const quint16 *src, int w, int h, int sstride, quint16 *dest, int dstride) { qt_memrotate180_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:   __attribute__((visibility("default"))) void qt_memrotate270(const quint16 *src, int w, int h, int sstride, quint16 *dest, int dstride) { qt_memrotate270_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:  end of block | 0 | ||||||
| 272 | __attribute__((visibility("default"))) void qt_memrotate90(const quint24 *src, int w, int h, int sstride, quint24 *dest, int dstride) { qt_memrotate90_template(src, w, h, sstride, dest, dstride); } never executed:   __attribute__((visibility("default"))) void qt_memrotate180(const quint24 *src, int w, int h, int sstride, quint24 *dest, int dstride) { qt_memrotate180_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:   __attribute__((visibility("default"))) void qt_memrotate270(const quint24 *src, int w, int h, int sstride, quint24 *dest, int dstride) { qt_memrotate270_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:  end of block | 0 | ||||||
| 273 | __attribute__((visibility("default"))) void qt_memrotate90(const quint8 *src, int w, int h, int sstride, quint8 *dest, int dstride) { qt_memrotate90_template(src, w, h, sstride, dest, dstride); } never executed:   __attribute__((visibility("default"))) void qt_memrotate180(const quint8 *src, int w, int h, int sstride, quint8 *dest, int dstride) { qt_memrotate180_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:   __attribute__((visibility("default"))) void qt_memrotate270(const quint8 *src, int w, int h, int sstride, quint8 *dest, int dstride) { qt_memrotate270_template(src, w, h, sstride, dest, dstride); }end of blocknever executed:  end of block | 0 | ||||||
| 274 | - | |||||||
| 275 | void qt_memrotate90_8(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 276 | { | - | ||||||
| 277 | qt_memrotate90(srcPixels, w, h, sbpl, destPixels, dbpl); | - | ||||||
| 278 | } never executed:  end of block | 0 | ||||||
| 279 | - | |||||||
| 280 | void qt_memrotate180_8(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 281 | { | - | ||||||
| 282 | qt_memrotate180(srcPixels, w, h, sbpl, destPixels, dbpl); | - | ||||||
| 283 | } never executed:  end of block | 0 | ||||||
| 284 | - | |||||||
| 285 | void qt_memrotate270_8(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 286 | { | - | ||||||
| 287 | qt_memrotate270(srcPixels, w, h, sbpl, destPixels, dbpl); | - | ||||||
| 288 | } never executed:  end of block | 0 | ||||||
| 289 | - | |||||||
| 290 | void qt_memrotate90_16(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 291 | { | - | ||||||
| 292 | qt_memrotate90((const ushort *)srcPixels, w, h, sbpl, (ushort *)destPixels, dbpl); | - | ||||||
| 293 | } never executed:  end of block | 0 | ||||||
| 294 | - | |||||||
| 295 | void qt_memrotate180_16(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 296 | { | - | ||||||
| 297 | qt_memrotate180((const ushort *)srcPixels, w, h, sbpl, (ushort *)destPixels, dbpl); | - | ||||||
| 298 | } never executed:  end of block | 0 | ||||||
| 299 | - | |||||||
| 300 | void qt_memrotate270_16(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 301 | { | - | ||||||
| 302 | qt_memrotate270((const ushort *)srcPixels, w, h, sbpl, (ushort *)destPixels, dbpl); | - | ||||||
| 303 | } never executed:  end of block | 0 | ||||||
| 304 | - | |||||||
| 305 | void qt_memrotate90_32(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 306 | { | - | ||||||
| 307 | qt_memrotate90((const uint *)srcPixels, w, h, sbpl, (uint *)destPixels, dbpl); | - | ||||||
| 308 | } never executed:  end of block | 0 | ||||||
| 309 | - | |||||||
| 310 | void qt_memrotate180_32(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 311 | { | - | ||||||
| 312 | qt_memrotate180((const uint *)srcPixels, w, h, sbpl, (uint *)destPixels, dbpl); | - | ||||||
| 313 | } never executed:  end of block | 0 | ||||||
| 314 | - | |||||||
| 315 | void qt_memrotate270_32(const uchar *srcPixels, int w, int h, int sbpl, uchar *destPixels, int dbpl) | - | ||||||
| 316 | { | - | ||||||
| 317 | qt_memrotate270((const uint *)srcPixels, w, h, sbpl, (uint *)destPixels, dbpl); | - | ||||||
| 318 | } never executed:  end of block | 0 | ||||||
| 319 | - | |||||||
| 320 | MemRotateFunc qMemRotateFunctions[QImage::NImageFormats][3] = | - | ||||||
| 321 | - | |||||||
| 322 | { | - | ||||||
| 323 | { 0, 0, 0 }, | - | ||||||
| 324 | { 0, 0, 0 }, | - | ||||||
| 325 | { 0, 0, 0 }, | - | ||||||
| 326 | { 0, 0, 0 }, | - | ||||||
| 327 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 328 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 329 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 330 | { qt_memrotate90_16, qt_memrotate180_16, qt_memrotate270_16 }, | - | ||||||
| 331 | { 0, 0, 0 }, | - | ||||||
| 332 | { 0, 0, 0 }, | - | ||||||
| 333 | { 0, 0, 0 }, | - | ||||||
| 334 | { 0, 0, 0 }, | - | ||||||
| 335 | { 0, 0, 0 }, | - | ||||||
| 336 | { 0, 0, 0 }, | - | ||||||
| 337 | { 0, 0, 0 }, | - | ||||||
| 338 | { 0, 0, 0 }, | - | ||||||
| 339 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 340 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 341 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 342 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 343 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 344 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 345 | { qt_memrotate90_32, qt_memrotate180_32, qt_memrotate270_32 }, | - | ||||||
| 346 | { qt_memrotate90_8, qt_memrotate180_8, qt_memrotate270_8 }, | - | ||||||
| 347 | { qt_memrotate90_8, qt_memrotate180_8, qt_memrotate270_8 }, | - | ||||||
| 348 | }; | - | ||||||
| 349 | - | |||||||
| 350 | - | |||||||
| Switch to Source code | Preprocessed file |