annotate osdep/swab.c @ 23927:91ccac9cc015

Add test for GNUisms It currently tests for case ... ranges only, but other tests (like GNU extensions to libc) can be added later
author ivo
date Mon, 30 Jul 2007 18:08:26 +0000
parents 936209c39ed1
children 5cfef41a1771
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16985
08cac43f1e38 Unify include paths, -I.. is in CFLAGS.
diego
parents: 13612
diff changeset
1 #include "config.h"
13612
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
2
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
3 /* system has no swab. emulate via bswap */
21852
a9a7d6d85020 bswap.h --> mpbswap.h
diego
parents: 16985
diff changeset
4 #include "mpbswap.h"
13612
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
5 #include <unistd.h>
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
6
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
7 void swab(const void *from, void *to, ssize_t n) {
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
8 const int16_t *in = (int16_t*)from;
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
9 int16_t *out = (int16_t*)to;
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
10 int i;
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
11 n /= 2;
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
12 for (i = 0 ; i < n; i++) {
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
13 out[i] = bswap_16(in[i]);
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
14 }
c0bde085511c Zeta OS support, mostly working.
reimar
parents:
diff changeset
15 }