ObjFW  Check-in [ee4b0920da]

Overview
Comment:OF_RO[LR]: Correctly handle bits % sizeof * 8 == 0
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: ee4b0920da3e8a0d18c940b5eb12f584b613a702f567bbdc00e73d4d50960262
User & Date: js on 2015-01-29 21:25:13
Other Links: manifest | tags
Context
2015-01-30
21:14
Fix rm of libobjfw.$major.dylib before symlinking check-in: 8b593c9da0 user: js tags: trunk
2015-01-29
21:25
OF_RO[LR]: Correctly handle bits % sizeof * 8 == 0 check-in: ee4b0920da user: js tags: trunk
20:58
-[OFString lastPathComponent]: Return @"" for / check-in: 775d6b52a5 user: js tags: trunk
Changes

Modified src/macros.h from [28504c42f6] to [e67b80b7e5].

506
507
508
509
510
511
512
513
514
515
516
517
518










519
520
521
522
523
524
525
506
507
508
509
510
511
512






513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529







-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+







#else
# define OF_BSWAP_FLOAT_IF_BE(i) (i)
# define OF_BSWAP_DOUBLE_IF_BE(i) (i)
# define OF_BSWAP_FLOAT_IF_LE(i) OF_BSWAP_FLOAT(i)
# define OF_BSWAP_DOUBLE_IF_LE(i) OF_BSWAP_DOUBLE(i)
#endif

#define OF_ROL(value, bits)						   \
	(((value) << ((bits) % (sizeof(value) * 8))) |			   \
	((value) >> (sizeof(value) * 8 - ((bits) % (sizeof(value) * 8)))))
#define OF_ROR(value, bits)						   \
	(((value) >> ((bits) % (sizeof(value) * 8))) |			   \
	((value) << (sizeof(value) * 8 - ((bits) % (sizeof(value) * 8)))))
#define OF_ROL(value, bits)						  \
	(((bits) % (sizeof(value) * 8)) > 0				  \
	? ((value) << ((bits) % (sizeof(value) * 8))) |			  \
	((value) >> (sizeof(value) * 8 - ((bits) % (sizeof(value) * 8)))) \
	: (value))
#define OF_ROR(value, bits)						  \
	(((bits) % (sizeof(value) * 8)) > 0				  \
	? ((value) >> ((bits) % (sizeof(value) * 8))) |			  \
	((value) << (sizeof(value) * 8 - ((bits) % (sizeof(value) * 8)))) \
	: (value))

#define OF_ROUND_UP_POW2(pow2, value) (((value) + (pow2) - 1) & ~((pow2) - 1))

#define OF_HASH_INIT(hash) hash = of_hash_seed;
#define OF_HASH_ADD(hash, byte)			\
	{					\
		hash += (uint8_t)(byte);	\