aboutsummaryrefslogtreecommitdiffstats
path: root/libparsepcf_parse_int32_from_unsigned__.c
blob: 37de799debc165afc7735b70b27ccd64d85fad45 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
/* See LICENSE file for copyright and license details. */
#include "common.h"


int32_t
libparsepcf_parse_int32_from_unsigned__(uint32_t u)
{
	if (u & UINT32_C(0x80000000)) {
		return (int32_t)(uint32_t)~u - 1;
	} else {
		return (int32_t)u;
	}
}