2014-04-01から1ヶ月間の記事一覧

ARM Linuxカーネルの中でNEONのSIMD命令を使用する方法

Linuxカーネルの中ではFPUを使った浮動小数点演算を一切行いません。カーネルのコードの中でFPUにアクセスするのはFPUレジスタの退避、復帰だけです。 NEONのSIMD命令はFPUレジスタを使用します。そのため以前はカーネルの中ではNEONのSIMD命令を使用するこ…

qemuでLinaroのaarch64のルートファイルシステムを動かす

LinaroのダウンロードサイトからOpenEmbeddedベースのaarch64用のルートファイルシステムを入手できます。これをqemuのユーザーモードエミュレーションを使って動かしてみます。 $ wget http://releases.linaro.org/14.04/openembedded/aarch64/linaro-image…

LLVMのバックエンドのaarch64とarm64の違い

Linaroのtoolchainのチームは週報をMLで公開しています。それを見ていたらLLVMのバックエンドのaarch64とarm64の違いについてとても簡潔な説明があったので紹介します。[ACTIVITY] Week 17LLVMのAArch64とARM64の比較のテストをしていると週報を書いたRenato…

Ubuntu 14.04でruby-2.1.1をソースからビルドする

Ubuntu 14.04でruby-2.1.1をソースからビルドして動かしてみようとしたのですが、ちょっと引っかかったことがあったのでここにメモします。本家のサイトからソースアーカイブをダウンロードしてきて、Ubuntu 14.04 (x86_64)でビルドしてみました。 $ tar xf …

Ubuntu 14.04でarm 64bit(aarch64)のコードをコンパイルして動かしてみる

先日リリースされたqemu 2.0でaarch64がサポートされました。これをソースからビルドして試そうと思ったのですが、実はUbuntu 14.04ではすでにqemu 2.0が入っていました。なので、以下のように簡単にセットアップできます。 $ sudo apt-get install qemu-use…

ARM 64bit でLLVMは見逃せない

iPhone5S, iPad Airで64bit ARMプロセッサをいち早く製品化したAppleですが、驚きのニュースがありました。AppleはOS X, iOSのコンパイラツールチェインをgccからclang/LLVMに移行しています。その64bit ARM向けのバックエンドをLLVMのコミュニティに公開し…