view osdep/swab.c @ 17625:c5f33a8021c7

Align memory at 16 byte boundaries. This fixes crashes related to AltiVec as reported at http://mplayerhq.hu/pipermail/mplayer-advusers/2006-January/001381.html patch by Luca Barbato, lu_zero #at# gentoo #dot# org
author diego
date Tue, 14 Feb 2006 09:55:14 +0000
parents 08cac43f1e38
children a9a7d6d85020
line wrap: on
line source

#include "config.h"

#ifndef	HAVE_SWAB
/* system has no swab.  emulate via bswap */
#include "bswap.h"
#include <unistd.h>

void swab(const void *from, void *to, ssize_t n) {
  const int16_t *in = (int16_t*)from;
  int16_t *out = (int16_t*)to;
  int i;
  n /= 2;
  for (i = 0 ; i < n; i++) {
    out[i] = bswap_16(in[i]);
  }
}
#endif