Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Side by Side Diff: src/arm/assembler-arm.h

Issue 2639443002: [ARM] Refactor NEON binary ops in assembler. (Closed)
Patch Set: Make NeonDataType match NeonSize. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/arm/assembler-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions 5 // modification, are permitted provided that the following conditions
6 // are met: 6 // are met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 1353 matching lines...) Expand 10 before | Expand all | Expand 10 after
1364 1364
1365 void vabs(const QwNeonRegister dst, const QwNeonRegister src); 1365 void vabs(const QwNeonRegister dst, const QwNeonRegister src);
1366 void vabs(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src); 1366 void vabs(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src);
1367 void vneg(const QwNeonRegister dst, const QwNeonRegister src); 1367 void vneg(const QwNeonRegister dst, const QwNeonRegister src);
1368 void vneg(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src); 1368 void vneg(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src);
1369 void veor(DwVfpRegister dst, DwVfpRegister src1, DwVfpRegister src2); 1369 void veor(DwVfpRegister dst, DwVfpRegister src1, DwVfpRegister src2);
1370 void vand(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2); 1370 void vand(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1371 void vbsl(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2); 1371 void vbsl(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1372 void veor(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2); 1372 void veor(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1373 void vorr(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2); 1373 void vorr(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1374 void vadd(const QwNeonRegister dst, const QwNeonRegister src1, 1374 void vadd(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1375 const QwNeonRegister src2); 1375 void vadd(NeonSize size, QwNeonRegister dst, QwNeonRegister src1,
1376 void vadd(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src1, 1376 QwNeonRegister src2);
1377 const QwNeonRegister src2); 1377 void vsub(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1378 void vsub(const QwNeonRegister dst, const QwNeonRegister src1, 1378 void vsub(NeonSize size, QwNeonRegister dst, QwNeonRegister src1,
1379 const QwNeonRegister src2); 1379 QwNeonRegister src2);
1380 void vsub(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src1, 1380 void vmul(QwNeonRegister dst, QwNeonRegister src1,
1381 const QwNeonRegister src2); 1381 QwNeonRegister src2);
1382 void vmul(const QwNeonRegister dst, const QwNeonRegister src1, 1382 void vmul(NeonSize size, QwNeonRegister dst, QwNeonRegister src1,
1383 const QwNeonRegister src2); 1383 QwNeonRegister src2);
1384 void vmul(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src1, 1384 void vmin(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1385 const QwNeonRegister src2); 1385 void vmin(NeonDataType dt, QwNeonRegister dst,
1386 void vmin(const QwNeonRegister dst, const QwNeonRegister src1, 1386 QwNeonRegister src1, QwNeonRegister src2);
1387 const QwNeonRegister src2); 1387 void vmax(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1388 void vmin(NeonDataType dt, const QwNeonRegister dst, 1388 void vmax(NeonDataType dt, QwNeonRegister dst,
1389 const QwNeonRegister src1, const QwNeonRegister src2); 1389 QwNeonRegister src1, QwNeonRegister src2);
1390 void vmax(const QwNeonRegister dst, const QwNeonRegister src1,
1391 const QwNeonRegister src2);
1392 void vmax(NeonDataType dt, const QwNeonRegister dst,
1393 const QwNeonRegister src1, const QwNeonRegister src2);
1394 // vrecpe and vrsqrte only support floating point lanes. 1390 // vrecpe and vrsqrte only support floating point lanes.
1395 void vrecpe(const QwNeonRegister dst, const QwNeonRegister src); 1391 void vrecpe(QwNeonRegister dst, QwNeonRegister src);
1396 void vrsqrte(const QwNeonRegister dst, const QwNeonRegister src); 1392 void vrsqrte(QwNeonRegister dst, QwNeonRegister src);
1397 void vrecps(const QwNeonRegister dst, const QwNeonRegister src1, 1393 void vrecps(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1398 const QwNeonRegister src2); 1394 void vrsqrts(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1399 void vrsqrts(const QwNeonRegister dst, const QwNeonRegister src1, 1395 void vtst(NeonSize size, QwNeonRegister dst, QwNeonRegister src1,
1400 const QwNeonRegister src2); 1396 QwNeonRegister src2);
1401 void vtst(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src1, 1397 void vceq(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1402 const QwNeonRegister src2); 1398 void vceq(NeonSize size, QwNeonRegister dst, QwNeonRegister src1,
1403 void vceq(const QwNeonRegister dst, const QwNeonRegister src1, 1399 QwNeonRegister src2);
1404 const QwNeonRegister src2); 1400 void vcge(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1405 void vceq(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src1, 1401 void vcge(NeonDataType dt, QwNeonRegister dst,
1406 const QwNeonRegister src2); 1402 QwNeonRegister src1, QwNeonRegister src2);
1407 void vcge(const QwNeonRegister dst, const QwNeonRegister src1, 1403 void vcgt(QwNeonRegister dst, QwNeonRegister src1, QwNeonRegister src2);
1408 const QwNeonRegister src2); 1404 void vcgt(NeonDataType dt, QwNeonRegister dst,
1409 void vcge(NeonDataType dt, const QwNeonRegister dst, 1405 QwNeonRegister src1, QwNeonRegister src2);
1410 const QwNeonRegister src1, const QwNeonRegister src2);
1411 void vcgt(const QwNeonRegister dst, const QwNeonRegister src1,
1412 const QwNeonRegister src2);
1413 void vcgt(NeonDataType dt, const QwNeonRegister dst,
1414 const QwNeonRegister src1, const QwNeonRegister src2);
1415 void vext(const QwNeonRegister dst, const QwNeonRegister src1, 1406 void vext(const QwNeonRegister dst, const QwNeonRegister src1,
1416 const QwNeonRegister src2, int bytes); 1407 const QwNeonRegister src2, int bytes);
1417 void vzip(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src); 1408 void vzip(NeonSize size, const QwNeonRegister dst, const QwNeonRegister src);
1418 void vrev16(NeonSize size, const QwNeonRegister dst, 1409 void vrev16(NeonSize size, const QwNeonRegister dst,
1419 const QwNeonRegister src); 1410 const QwNeonRegister src);
1420 void vrev32(NeonSize size, const QwNeonRegister dst, 1411 void vrev32(NeonSize size, const QwNeonRegister dst,
1421 const QwNeonRegister src); 1412 const QwNeonRegister src);
1422 void vrev64(NeonSize size, const QwNeonRegister dst, 1413 void vrev64(NeonSize size, const QwNeonRegister dst,
1423 const QwNeonRegister src); 1414 const QwNeonRegister src);
1424 void vtbl(const DwVfpRegister dst, const NeonListOperand& list, 1415 void vtbl(const DwVfpRegister dst, const NeonListOperand& list,
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after
1823 explicit EnsureSpace(Assembler* assembler) { 1814 explicit EnsureSpace(Assembler* assembler) {
1824 assembler->CheckBuffer(); 1815 assembler->CheckBuffer();
1825 } 1816 }
1826 }; 1817 };
1827 1818
1828 1819
1829 } // namespace internal 1820 } // namespace internal
1830 } // namespace v8 1821 } // namespace v8
1831 1822
1832 #endif // V8_ARM_ASSEMBLER_ARM_H_ 1823 #endif // V8_ARM_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « no previous file | src/arm/assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698