mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-23 20:03:31 +01:00
r8844@totoro: nickm | 2006-10-02 16:32:44 -0400
Resolve an XXXX: make sure that we are actually on 2s-complement hardware. svn:r8576
This commit is contained in:
parent
14f9b537d1
commit
36adc7cdd9
21
configure.in
21
configure.in
@ -588,6 +588,27 @@ if test $tor_cv_malloc_zero_works = yes; then
|
||||
[Define to 1 iff malloc(0) returns a pointer])
|
||||
fi
|
||||
|
||||
# whether we seem to be in a 2s-complement world.
|
||||
if test -z "$CROSS_COMPILE"; then
|
||||
AC_CACHE_CHECK([whether we are using 2s-complement arithmetic], tor_cv_twos_complement,
|
||||
[AC_RUN_IFELSE([AC_LANG_SOURCE(
|
||||
[[int main () { int problem = ((-99) != (~99)+1);
|
||||
return problem ? 1 : 0; }]])],
|
||||
[tor_cv_twos_complement=yes],
|
||||
[tor_cv_twos_complement=no],
|
||||
[tor_cv_twos_complement=cross])])
|
||||
|
||||
else
|
||||
# Cross-compiling; let's hope that the target isn't raving mad.
|
||||
AC_MSG_NOTICE([Cross-compiling: we'll assume that NULL is represented as a sequence of 0-valued bytes.])
|
||||
tor_cv_twos_complement=yes
|
||||
fi
|
||||
|
||||
if test $tor_cv_twos_complement = yes; then
|
||||
AC_DEFINE([USING_TWOS_COMPLEMENT], 1,
|
||||
[Define to 1 iff we represent negative integers with two's complement])
|
||||
fi
|
||||
|
||||
# Whether we should use the dmalloc memory allocation debugging library.
|
||||
AC_MSG_CHECKING(whether to use dmalloc (debug memory allocation library))
|
||||
AC_ARG_WITH(dmalloc,
|
||||
|
@ -220,9 +220,12 @@ typedef uint32_t uintptr_t;
|
||||
#error "Missing type uint64_t"
|
||||
#endif
|
||||
|
||||
/* XXXX This assumes a sane (2's-complement) representation. But if you
|
||||
* aren't 2's complement, and you don't define LONG_MAX, then you're so
|
||||
* bizarre that I want nothing to do with you. */
|
||||
/* This assumes a sane (2's-complement) representation. But if you
|
||||
* aren't 2's complement, and you don't define LONG_MAX, then you're so
|
||||
* bizarre that I want nothing to do with you. */
|
||||
#ifndef USING_TWOS_COMPLEMENT
|
||||
#error "Seems that your platform doesn't use 2's complement arithmetic. Argh."
|
||||
#endif
|
||||
#ifndef LONG_MAX
|
||||
#if (SIZEOF_LONG == 4)
|
||||
#define LONG_MAX 0x7fffffffL
|
||||
|
Loading…
Reference in New Issue
Block a user