-void bputw_slow(struct fastbuf *f, uns w);
-static inline void bputw(struct fastbuf *f, uns w)
-{
- if (bavailw(f) >= 2)
- {
- PUT_U16(f->bptr, w);
- f->bptr += 2;
- }
- else
- bputw_slow(f, w);
-}
+#define FF_ALL_X(type, name, bits, defendian) \
+ GET_FUNC(type, name, bits, be) \
+ GET_FUNC(type, name, bits, le) \
+ PUT_FUNC(type, name, bits, be) \
+ PUT_FUNC(type, name, bits, le) \
+ static inline type bget##name(struct fastbuf *f) { return bget##name##_##defendian(f); } \
+ static inline void bput##name(struct fastbuf *f, type x) { bput##name##_##defendian(f, x); }