タグ

ブックマーク / blog.kmckk.com (7)

  • KMC Staff Blog:LLVM/Clang 3.7.1をMSYS2でビルド

    2016年02月18日 LLVM/Clang 3.7.1をMSYS2でビルド MSYS2 を試してみた所、LLVM/Clang が比較的簡単にビルドできましたので紹介します。以前紹介した、VisualStudio でビルドする場合と比較すると、 LLVM/Clang のビルドに必要な、GCC、CMake、Python、GNU Make などの各種 GNU ツールが、Linux の APT や Yum のようなパッケージマネージャ(MSYS2 は Arch Linux の pacman を採用)でインストールできるので、環境構築や管理が楽。 VisualStudio は比較的大きく、有償(無料の Express エディションもありますが、常用には登録が必要)のソフトウェアなので、比較的コンパクトで自由なソフトウェアである MSYS2 の方が色々楽。 GNU 環境のコマンドライン操作に慣れてい

    R2M
    R2M 2016/02/20
  • KMC Staff Blog:LLVM 3.5(git リポジトリ)をMS VC++でビルド

    2014年03月06日 LLVM 3.5(git リポジトリ)をMS VC++でビルド 最新の LLVM 3.5(2014/3/6 の git リポジトリ)を MS Windows 環境でビルドしてみました。 ・必要なツールのインストール - VisualStudio 2012 今回はビルドに VC++ 2012 を使用します。 - CMake ソリューションファイルを生成するために必要です。 http://www.cmake.org/files/v2.8/cmake-2.8.12.2-win32-x86.exe 全て default でインストールしました。 - Python リグレッションテストを省略するならば不要そうですが、後述するエラーが出たので、インストールしておきます。 http://www.python.org/ftp/python/2.7.6/python-2.7.6.am

  • KMC Staff Blog:ARMの64bitアーキテクチャ ARMv8 の概要

    2012年04月09日 ARMの64bitアーキテクチャ ARMv8 の概要 "ARMv8 Instruction Set Overview"というドキュメントがARMのサイトからダウンロード可能です。(ただし登録が必要。) この資料からARMv8アーキテクチャの概要をながめてみました。 "ARMv8 Instruction Set Overview" これはまだOverviewで、各命令のビットパターンまでは書いてありません。そのためこの資料だけでは、逆アセンブラやCPUエミュレータを作ることはできません。 2つの実行状態 AArch64: ARMv8での64bitの実行状態。 AArch32: ARMv8での32bitの実行状態。ほぼARMv7互換。追加されてる命令があります。 (この実行状態をどうやって切り替えるのかはこのドキュメントには書いてないようです。おそらく特権モード(OSカ

    R2M
    R2M 2012/04/11
  • KMC Staff Blog:Android 4.0でZygoteを起動せずに最小構成で動かす

    2011年12月21日 Android 4.0でZygoteを起動せずに最小構成で動かす Androidのinit.rcでは複数のserviceをまとめて扱うclassを定義することができます。この機能は以前からあったのですが、使われていませんでした。 Android 4.0ではinit.rcを少し修正することで、ZygoteなどAndroidのframeworkのserviceが起動する前の、最小限の構成までで止めることができます。 最小構成で動かす 通常状態でのプロセスは以下のものが動いています。 $ ps USER PID PPID VSIZE RSS WCHAN PC NAME root 1 0 332 196 ffffffff 00000000 S /init ... (kernel threadは省略) ... root 41 1 328 180 ffffffff 000000

    R2M
    R2M 2011/12/22
  • KMC Staff Blog:Android 4.0で利用されているLLVM

    2011年12月05日 Android 4.0で利用されているLLVM Android4.0(Ice Cream Sandwich)のソースコードを見て、RenderScriptにLLVMの技術が使われているのがわかりました。(正確には3.xからですが、ソースが公開されていなかったので詳細を確認できませんでした。) 技術的な興味で少し調べたのでここにメモを残します。 Android RenderScript on LLVM この資料から図を拝借して。 ホスト側で .rsファイルから.bc(bitcode: LLVMの中間言語フォーマット)にコンパイルするとともに、関数の呼び出しのためのラッパーメソッドや変数のgetter/setterメソッドのJavaソースコードが自動生成される。このためJavaとRenderscript間でのやりとりは簡単。JNIは不要。 ターゲット側で (図中ではJa

    R2M
    R2M 2011/12/05
  • KMC Staff Blog:ELCヨーロッパで話をしてきました (Android is NOT just 'Java on Linux')

    2011年11月01日 ELCヨーロッパで話をしてきました (Android is NOT just 'Java on Linux') 10月26日-28日にチェコ共和国のプラハで開催されたEmbedded Linux Conference Europeで講演してきました。 プラハ城 Android is NOT just 'Java on Linux' View more presentations from Tetsuyuki Kobayashi 内容的には以前のスライドの修正版です。外国で英語で講演するのは初めてでしたが、なんとかうまくいきました。 「Linux」カテゴリの最新記事 タグ : linux elc

    R2M
    R2M 2011/11/01
  • KMC Staff Blog:Androidでkeyイベントを発生させるinputコマンドをサクサクにする

    2011年06月21日 Androidでkeyイベントを発生させるinputコマンドをサクサクにする 以下のページでAndroidのinputコマンドが紹介されていました。 adbを使って端末にキーイベントを送る - TechBooster このコマンドを詳しく見てみます。 inputコマンドの使い方 コンソールかadbのshellから単にinputと打ってみます。 # input usage: input [text|keyevent] input text <string> input keyevent <event_code> このinputコマンドを使うと任意のキーイベントをコマンドラインから発行することができます。 実際のキーイベントのコードはandroid.view.KeyEvent.javaに定義されています。 便利そうなものをピックアップすると public static

    R2M
    R2M 2011/06/21
  • 1