Commit 36adc7cd by Nick Mathewson 🎨

### 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```
parent 14f9b537
 ... ... @@ -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 ... ...
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!