i386/x86_64 向けの GCC/Clang のインラインアセンブラで "i" 制約によって定数を埋め込む時、AT&T 記法の場合だと $ プレフィックスが付きます。 AT&T 記法の場合は即値にプレフィックスを付けることになっているので、この挙動は妥当です。即値にプレフィックス付けなくてもアセンブルはできるようですが。(今試して気づいた)

Read the rest of this entry

その2の続き

2要素の場合で既にかなり残念なことになっていますが、3要素の場合はどうでしょうか。

Read the rest of this entry

その1の続き

要素の並べ替え(正確にはアンパック)を行う場合はどうでしょうか。 UtVideo では packed フォーマットと planar フォーマットの変換でこの処理が出てきます。

Read the rest of this entry

intrinsic に移行したけどそれもやっぱり辛いよね、という話を以前書きましたが、ではコンパイラによる自動ベクトル化はどれくらい使い物になるのかを調べようと思います。

Read the rest of this entry

性能向上
  • ULY0, ULH0: RGB 系フォーマットおよび YV16 での入出力を高速化した。
バグ修正
  • ULY4, ULH4, ULY2, ULH2: QuickTime で ARGB にデコードする際に誤ったアルファ値を設定していた。

Read the rest of this entry

式の置き換えを行う .equ ディレクティブの扱いが異なることがあるようです。

Read the rest of this entry

uint8_t での Predict Median で予測値を計算する際、uint8_t のままで計算すると gradient の計算でオーバーフロー(やアンダーフロー)が発生しうるため、その後に大小比較をすると不正確な結果になってしまう、という話をだいぶ前に記事にしました。

Read the rest of this entry

機能追加
  • ULxx: Predict Gradient フレーム内予測方式を追加した。
性能向上
  • ULxx: エンコードを高速化した。

Read the rest of this entry

その他
  • ランタイムライブラリをスタティックリンクにした。

Read the rest of this entry

完全にヨタ話ですが、Win7 のデフォルトの配色だと色の関係でアイコンが見づらいです。

Read the rest of this entry