Skip to content
Snippets Groups Projects
  • Jungshik Shin's avatar
    Support Big Endian in ICU: part 3 · ec9c1133
    Jungshik Shin authored
    Add big endian (mips and mips64) support to BUILD.gn
    
    - icudt[lb]_dat.S (assembly source) is generated at build-time from
      icudt[lb].dat (data bundle) when icu_use_data_file is false.
    - icudt[lb].dat is copied depending on the endinaness when icu_use_data_file
      is true.
    
    Part 1:  https://codereview.chromium.org/2162393003
    Part 2:  https://codereview.chromium.org/2165403003
    
    It works on Linux (both Chrome and v8) and Mac (v8).
    Android was also tested by building base_unittests target with
    icu_use_data_file=true/false.
    
    v8 does not yet support mips/mips64 in GN so that this CL cannot be
    tested with target_cpu={mips,mips64}.
    
    With Chrome on Mac, TEST below has to be done with
    https://codereview.chromium.org/2181043003 for http://crbug.com/630929.
    
    Windows should not be affected at all.
    
    BUG=v8:4828
    TEST='gn args <builddir>' with icu_use_data_file set to true or false
    TEST=build base_unittests and run with --gtest_filter=ICU*
    TEST=build base_unittests and run with --gtest_filter=Message*ormat*
    TEST=build 'd8' (v8) and try `(new Date()).toLocaleString("de")`
    R=machenbach@chromium.org
    
    Review URL: https://codereview.chromium.org/2174993002 .
    ec9c1133