@techreport{oai:ipsj.ixsq.nii.ac.jp:00234549, author = {長尾, 聡希 and 大津, 金光 and 横田, 隆史 and Satoki, Nagao and Kanemitsu, Ootsu and Takashi, Yokota}, issue = {5}, month = {Jun}, note = {現在,64 ビット ARM プロセッサが採用されている端末は,モバイル端末や IoT 機器等の計算資源が限られているものが多い.そのような端末上でのアプリケーションプログラムの実行速度の向上には,コンパイラによる最適化が有効である.しかし,元のソースコードが入手できない場合,最適化による恩恵を受けることができない.本稿では,ARM64 機械語バイナリコードの最適化を目的に,ARM64 機械語コードをコンパイラ基盤 LLVM の中間表現である LLVM IR で記述されたコードに変換する手法について述べる.本手法では,各関数上のスタック変数のオフセットとサイズの解析,条件分岐における条件判定の効率化により,ARM64 機械語コードを,ループの制御構造の解析および変形がしやすく,最適化に適した LLVM IR コードに変換する., Currently, 64-bit ARM processors are used in many devices with limited computing resources, such as mobile devices and IoT devices. In order to achieve higher performance on such devices, compiler optimization is effective. However, if the original source code is not available, optimization cannot be applied. In this paper, we propose a method to convert ARM64 machine code into code written in LLVM IR, which is an intermediate representation used in LLVM compiler infrastructure, for the purpose of optimizing 64-bit ARM machine language binaries. This method transforms ARM64 machine code into LLVM IR with easy to analyze and transform loops, by analyzing the offset and size of stack variables on each function, and by simplifying the calculation of whether conditional branches are taken or not.}, title = {ARM64機械語コードから最適化に適したLLVM中間言語への変換手法の開発}, year = {2024} }