• jochen@chromium.org's avatar
    Improve x32 detection macro. · 02213097
    jochen@chromium.org authored
    When targeting the Microsoft ABI in 64bit mode, clang defines __x86_64__ but
    doesn't define __LP64__ (Microsoft uses LLP64), so it would fall down the x32
    path. cl.exe doesn't define __x86_64__ in the first place, so it didn't have
    this problem.
    
    Rather than trying to guess pointer size by looking at __x86_64__ and __LP64__,
    check for pointer size directly using __POINTER_SIZE__. This is defined by both
    gcc and clang, and eliminiates this problem.
    
    This should fix hundreds of "error(clang): unknown type name 'Atomic64'" when
    compiling v8 on Windows with clang for 64 bit.
    
    BUG=chromium:82385
    LOG=n
    R=haitao.feng@intel.com, jochen@chromium.org
    
    Review URL: https://codereview.chromium.org/560903002
    
    Patch from Nico Weber <thakis@chromium.org>.
    
    git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    02213097
build_config.h 5.37 KB