Upgrade to Pro — share decks privately, control downloads, hide ads and more …

俺はビッグエンディアンでテストがしたいんだ!

Avatar for kenjihanada kenjihanada
February 22, 2019

 俺はビッグエンディアンでテストがしたいんだ!

by kawashin73

Avatar for kenjihanada

kenjihanada

February 22, 2019
Tweet

More Decks by kenjihanada

Other Decks in Technology

Transcript

  1. エンディアンはバイトの並び順(バイトオーダーとも) 例えば uint64 は 8 バイトの数値。その中身がどのように配置されているか ビッグエンディアン 0x0123456789abcdef → 0x01

    | 0x23 | 0x45 | 0x67 | 0x89 | 0xab | 0xcd | 0xef リトルエンディアン → 0xef | 0xcd | 0xab | 0x89 | 0x67 | 0x45 | 0x23 | 0x01 エンディアンとは
  2. Travis CI で自動テスト Travis CI の CPU アーキテクチャは amd64 (リトルエンディアン)のみ

    Travis CI でビッグエンディアンでテストする手法を探す → QEMU でビッグエンディアンの CPU をエミュレートする
  3. qemu で go test Linux で Go の実行環境をインストールできるのは以下のCPUアーキテクチャ amd64, 386,

    arm, arm64, s390x, ppc64le この中で、ビッグエンディアンなのは s390x https://golang.org/doc/install#requirements ※ arm はリトルエンディアン、armbe がビッグエンディアン