Uploaded image for project: 'WiredTiger'
  1. WiredTiger
  2. WT-2900

Add ARM8 build support to WiredTiger and fix ARM CRC assembler tags

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • WT2.9.0, 3.2.10, 3.3.14
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      alexander.gorrod comments in WT-2882:

      I just tried an Evergreen patch build with the latest WiredTiger develop after the CRC branch was merged, and including the ARM Sconscript change. It's still encountering a compile problem on the ARM builder:

      https://evergreen.mongodb.com/task/mongodb_mongo_master_enterprise_ubuntu1604_arm64_compile_2d3d3d3a92e2b1549a638a6f06d8c408625a2287_16_09_08_07_07_24

      The particular errors are copied below. We are pushing to get master updated, so that we can get a set of changes in for the MongoDB 3.2 release next Monday. Would you mind digging into the failure during your day today?

       [2016/09/08 04:17:36.784] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c: In function '__wt_checksum_hw':
       [2016/09/08 04:17:36.784] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:42:2: error: implicit declaration of function 'asm' [-Werror=implicit-function-declaration]
       [2016/09/08 04:17:36.784]   asm("crc32cb %w[c], %w[c], %w[v]" : [c]"+r"(*&crc) : [v]"r"(+value))
       [2016/09/08 04:17:36.784]   ^
       [2016/09/08 04:17:36.784] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:63:3: note: in expansion of macro 'CRC32CB'
       [2016/09/08 04:17:36.784]    CRC32CB(crc, *p);
       [2016/09/08 04:17:36.784]    ^
       [2016/09/08 04:17:36.784] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:42:36: error: expected ')' before ':' token
       [2016/09/08 04:17:36.784]   asm("crc32cb %w[c], %w[c], %w[v]" : [c]"+r"(*&crc) : [v]"r"(+value))
       [2016/09/08 04:17:36.785]                                     ^
       [2016/09/08 04:17:36.785] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:63:3: note: in expansion of macro 'CRC32CB'
       [2016/09/08 04:17:36.785]    CRC32CB(crc, *p);
       [2016/09/08 04:17:36.785]    ^
       [2016/09/08 04:17:36.785] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:36:36: error: expected ')' before ':' token
       [2016/09/08 04:17:36.785]   asm("crc32cx %w[c], %w[c], %x[v]" : [c]"+r"(*&crc) : [v]"r"(+value))
       [2016/09/08 04:17:36.785]                                     ^
       [2016/09/08 04:17:36.785] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:69:3: note: in expansion of macro 'CRC32CX'
       [2016/09/08 04:17:36.785]    CRC32CX(crc, *p64);
       [2016/09/08 04:17:36.785]    ^
       [2016/09/08 04:17:36.785] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:42:36: error: expected ')' before ':' token
       [2016/09/08 04:17:36.785]   asm("crc32cb %w[c], %w[c], %w[v]" : [c]"+r"(*&crc) : [v]"r"(+value))
       [2016/09/08 04:17:36.785]                                     ^
       [2016/09/08 04:17:36.785] src/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.c:76:3: note: in expansion of macro 'CRC32CB'
       [2016/09/08 04:17:36.785]    CRC32CB(crc, *p);
       [2016/09/08 04:17:36.785]    ^
       [2016/09/08 04:17:36.789] cc1: all warnings being treated as errors
       [2016/09/08 04:17:36.795] scons: *** [build/opt/third_party/wiredtiger/src/checksum/arm64/crc32-arm64.o] Error 1
      

            Assignee:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Reporter:
            keith.bostic@mongodb.com Keith Bostic (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: