message: Move up constrain checks for builtins
diff: @@ -109,6 +109,45 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi
  message(FATAL_ERROR "Error")
  endif()
  + # Host to target OS constrains
  + if (WIN32)
  + if (${os_name} STREQUAL "ios")
  + set(SKIP ON)
  + endif()
  + elseif (APPLE)
  + if (${os_name} STREQUAL "windows")
  + set(SKIP ON)
  + elseif (${os_name} STREQUAL "ps4")
  + set(SKIP ON)
  + endif()
  + else()
  + if (${os_name} STREQUAL "windows")
  + set(SKIP ON)
  + elseif (${os_name} STREQUAL "ps4")
  + set(SKIP ON)
  + elseif (${os_name} STREQUAL "ios")
  + set(SKIP ON)
  + endif()
  + endif()
  +
  + # OS to arch constrains
  + if (${os_name} STREQUAL "windows" AND ${arch} STREQUAL "arm")
  + set(SKIP ON)
  + endif()
  + if (${os_name} STREQUAL "macos" AND NOT ${target_arch} STREQUAL "x86_64")
  + set(SKIP ON)
  + endif()
  + if (${os_name} STREQUAL "ps4" AND NOT ${target_arch} STREQUAL "x86_64")
  + set(SKIP ON)
  + endif()
  + if (${os_name} STREQUAL "ios")
  + if (${target_arch} STREQUAL "aarch64")
  + set(target_arch "arm64")
  + else()
  + set(SKIP ON)
  + endif()
  + endif()
  +
  # Determine include path
  if (WIN32)
  if (${os_name} STREQUAL "windows")
  @@ -148,44 +187,6 @@ function(builtin_to_cpp bit os_name arch supported_archs supported_oses resultFi
  endif()
  endif()
  - # Host to target OS constrains
  - if (WIN32)
  - if (${os_name} STREQUAL "ios")
  - set(SKIP ON)
  - endif()
  - elseif (APPLE)
  - if (${os_name} STREQUAL "windows")
  - set(SKIP ON)
  - elseif (${os_name} STREQUAL "ps4")
  - set(SKIP ON)
  - endif()
  - else()
  - if (${os_name} STREQUAL "windows")
  - set(SKIP ON)
  - elseif (${os_name} STREQUAL "ps4")
  - set(SKIP ON)
  - elseif (${os_name} STREQUAL "ios")
  - set(SKIP ON)
  - endif()
  - endif()
  -
  - # OS to arch constrains
  - if (${os_name} STREQUAL "windows" AND ${arch} STREQUAL "arm")
  - set(SKIP ON)
  - endif()
  - if (${os_name} STREQUAL "macos" AND NOT ${target_arch} STREQUAL "x86_64")
  - set(SKIP ON)
  - endif()
  - if (${os_name} STREQUAL "ps4" AND NOT ${target_arch} STREQUAL "x86_64")
  - set(SKIP ON)
  - endif()
  - if (${os_name} STREQUAL "ios")
  - if (${target_arch} STREQUAL "aarch64")
  - set(target_arch "arm64")
  - else()
  - set(SKIP ON)
  - endif()
  - endif()
  # FreeBSD seems to prefer using amd64 over x86_64 naming, but it's nothing more than an alias.
  # Determine triple
  