Christophe Gisquet
6b03900382
x86 dsputil: provide SSE2/SSSE3 versions of bswap_buf
...
While pshufb allows emulating bswap on XMM registers for SSSE3, more
shuffling is needed for SSE2. Alignment is critical, so specific codepaths
are provided for this case.
For the huffyuv sequence "angels_480-huffyuvcompress.avi":
C (using bswap instruction): ~ 55k cycles
SSE2: ~ 40k cycles
SSSE3 using unaligned loads: ~ 35k cycles
SSSE3 using aligned loads: ~ 30k cycles
Signed-off-by: Diego Biurrun <diego@biurrun.de >
2012-01-30 10:19:55 +01:00
..
2012-01-28 14:56:18 +00:00
2012-01-07 22:13:07 +01:00
2012-01-30 10:19:55 +01:00
2012-01-27 17:19:09 -08:00
2012-01-26 22:44:37 +01:00
2012-01-09 11:04:05 -08:00
2012-01-23 11:40:46 -08:00
2012-01-11 14:40:47 -08:00
2012-01-29 23:26:04 +00:00
2012-01-23 11:40:46 -08:00
2012-01-09 11:06:14 -08:00
2012-01-23 11:40:46 -08:00
2012-01-28 14:56:18 +00:00
2012-01-28 14:56:18 +00:00
2012-01-27 10:38:34 +01:00
2012-01-27 17:19:09 -08:00
2012-01-24 14:13:46 -05:00
2012-01-03 16:28:17 -05:00
2012-01-03 16:28:17 -05:00
2012-01-03 18:47:42 -05:00
2012-01-03 18:47:42 -05:00
2012-01-03 13:15:24 -05:00
2012-01-03 13:15:23 -05:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-04 21:33:14 -08:00
2011-12-30 22:18:07 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 10:38:33 +01:00
2012-01-27 10:38:33 +01:00
2012-01-27 17:19:09 -08:00
2012-01-28 19:45:33 +01:00
2011-12-25 20:50:20 +01:00
2012-01-10 10:34:16 -08:00
2012-01-08 13:26:54 -08:00
2012-01-01 22:27:04 +01:00
2012-01-27 17:19:09 -08:00
2012-01-10 05:58:19 -08:00
2012-01-10 09:29:22 -08:00
2012-01-01 22:56:04 -05:00
2012-01-14 12:35:53 -05:00
2012-01-12 23:08:23 +01:00
2012-01-12 23:08:23 +01:00
2012-01-12 23:08:23 +01:00
2012-01-07 22:13:07 +01:00
2012-01-07 22:13:07 +01:00
2011-12-31 01:04:09 +01:00
2012-01-27 17:19:09 -08:00
2012-01-03 15:25:54 +01:00
2012-01-03 15:25:51 +01:00
2012-01-04 01:28:28 +01:00
2012-01-08 13:13:11 -08:00
2012-01-29 08:11:18 -08:00
2012-01-29 08:11:18 -08:00
2011-12-30 22:18:07 +01:00
2012-01-27 17:19:09 -08:00
2011-10-20 21:06:58 +02:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-18 18:10:01 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 10:38:34 +01:00
2012-01-27 17:19:09 -08:00
2012-01-06 16:48:27 -05:00
2012-01-27 09:31:06 +08:00
2012-01-14 17:32:36 +01:00
2012-01-07 13:38:23 -05:00
2012-01-11 08:56:24 -05:00
2012-01-11 08:56:24 -05:00
2012-01-11 08:56:24 -05:00
2012-01-11 08:56:24 -05:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-12 23:08:23 +01:00
2012-01-27 17:19:09 -08:00
2012-01-14 17:32:36 +01:00
2012-01-27 17:19:09 -08:00
2012-01-06 01:47:45 +01:00
2012-01-12 23:08:23 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-07 09:41:11 +01:00
2012-01-12 13:54:41 +01:00
2012-01-12 13:54:41 +01:00
2012-01-25 14:31:57 +01:00
2012-01-27 17:19:09 -08:00
2012-01-15 21:24:17 -05:00
2012-01-07 15:25:38 +02:00
2012-01-07 00:18:42 +01:00
2011-12-30 22:18:07 +01:00
2011-12-28 15:22:18 +01:00
2011-12-28 15:22:18 +01:00
2012-01-27 17:19:09 -08:00
2012-01-09 17:26:33 -08:00
2011-12-29 07:37:33 +01:00
2012-01-07 22:13:07 +01:00
2012-01-11 08:56:24 -05:00
2012-01-27 10:38:34 +01:00
2012-01-07 22:13:07 +01:00
2012-01-27 11:28:21 -05:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2011-12-30 22:18:07 +01:00
2012-01-11 00:23:07 +01:00
2012-01-11 00:23:07 +01:00
2012-01-27 10:38:33 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-07 22:13:07 +01:00
2012-01-27 17:19:09 -08:00
2012-01-29 08:11:18 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-26 15:47:36 -08:00
2012-01-27 10:38:34 +01:00
2012-01-27 17:19:09 -08:00
2012-01-25 13:14:49 +01:00
2012-01-06 01:47:45 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 10:38:33 +01:00
2012-01-27 10:38:34 +01:00
2012-01-27 10:38:34 +01:00
2012-01-08 17:37:23 -08:00
2012-01-08 17:37:07 -08:00
2012-01-08 17:37:23 -08:00
2012-01-21 08:28:08 +01:00
2012-01-27 10:38:33 +01:00
2012-01-21 08:28:08 +01:00
2012-01-02 19:20:23 +01:00
2012-01-11 08:56:24 -05:00
2012-01-11 13:48:30 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 10:38:34 +01:00
2012-01-22 16:38:20 +01:00
2012-01-27 17:19:09 -08:00
2012-01-15 21:24:18 -05:00
2012-01-15 22:44:00 -05:00
2012-01-29 08:11:18 -08:00
2012-01-29 08:11:18 -08:00
2012-01-29 08:11:18 -08:00
2012-01-22 16:38:20 +01:00
2012-01-27 17:19:09 -08:00
2012-01-23 11:40:46 -08:00
2012-01-21 13:26:44 +01:00
2012-01-26 10:17:04 -08:00
2012-01-27 17:19:09 -08:00
2011-12-30 22:18:07 +01:00
2012-01-27 17:19:09 -08:00
2012-01-01 22:27:04 +01:00
2012-01-27 17:19:09 -08:00
2012-01-25 16:18:54 +01:00
2012-01-10 22:51:56 +01:00
2012-01-16 19:26:41 +01:00
2012-01-10 22:51:56 +01:00
2012-01-12 09:52:33 +01:00
2012-01-16 19:26:41 +01:00
2012-01-16 19:26:41 +01:00
2012-01-10 22:51:56 +01:00
2012-01-28 14:56:18 +00:00
2012-01-28 14:56:18 +00:00
2012-01-28 14:56:18 +00:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-29 08:11:18 -08:00
2012-01-13 17:11:41 -05:00
2012-01-27 10:38:35 +01:00
2012-01-05 23:19:13 +01:00
2012-01-27 17:19:09 -08:00
2012-01-17 09:41:13 -05:00
2012-01-27 17:19:09 -08:00
2012-01-28 19:44:55 +01:00
2012-01-27 17:19:09 -08:00
2012-01-12 18:18:23 +01:00
2012-01-12 18:18:23 +01:00
2011-07-10 23:58:26 +01:00
2011-12-30 22:18:07 +01:00
2011-12-30 22:18:07 +01:00
2012-01-27 17:19:09 -08:00
2012-01-12 18:18:23 +01:00
2012-01-06 01:47:45 +01:00
2012-01-26 15:19:27 +01:00
2012-01-27 09:24:13 +08:00
2012-01-27 10:38:35 +01:00
2012-01-27 17:19:09 -08:00
2012-01-06 19:58:22 +01:00
2012-01-27 17:19:09 -08:00
2012-01-05 18:18:08 +01:00
2012-01-07 22:13:12 +01:00
2012-01-15 15:27:55 +01:00
2012-01-27 17:19:09 -08:00
2012-01-23 19:04:35 +01:00
2012-01-23 19:04:35 +01:00
2012-01-23 19:04:35 +01:00
2012-01-27 17:19:09 -08:00
2012-01-27 17:19:09 -08:00
2012-01-07 22:13:07 +01:00