タグ

gccに関するmasudaKのブックマーク (11)

  • 革命の日々! a.out からコンパイラバージョンを取得する方法

    忘れないうちにメモ Linuxで普通に実行ファイルつくると.commentセクションとデバッグインフォメーションの 二箇所にコンパイラのバージョンが入ってる。これはobjdumpやreadelfで観測できる。 なぜこんなテクニックを知る必要があるかというとバグ報告で嘘のコンパイラバージョンを 報告してくる輩はけしてレアではないからである 1つめ。.comment セクションを objdumpで表示 % objdump -s -j .comment a.out a.out: file format elf64-x86-64 Contents of section .comment: 0000 4743433a 2028474e 55292034 2e342e36 GCC: (GNU) 4.4.6 0010 20323031 32303330 35202852 65642048 2012030

    革命の日々! a.out からコンパイラバージョンを取得する方法
  • g1g0.com is for sale | HugeDomains

    Make 24 monthly payments Pay 0% interest Start using the domain today. See details

    g1g0.com is for sale | HugeDomains
    masudaK
    masudaK 2013/02/15
  • GNU Development Toolsが良書すぎてヤバい - As a Futurist...

    gcc hoge.cってするとa.outができて実行できて、まぁなんて C プログラミングって簡単なんでしょう!ってレベルのプログラム力しかないんですが、何の因果かそれがどうやって動いてるのか/できてるのかが気になり始めるお年頃を迎えてしまっている riywo です。情弱です。 jemalloc とか LD_PRELOAD について調べてみた – As a Futurist… この記事を書いてる時に、そもそも動的リンクとか静的リンクとか、概念的にはぼやっと分かってるつもりだけど、細かいことなんにも知らないなーやばいなーって思ってたら、mizzy さんが「GNU Development Tools」というを教えてくれました!ありがとうございます! GNU 開発ツール|オーバーシー・パブリッシング このは自費出版されているで、すでに上記サイトでは取り扱いがなく、絶版状態で困ってしまいまし

    GNU Development Toolsが良書すぎてヤバい - As a Futurist...
    masudaK
    masudaK 2012/04/25
    気になる。
  • GCC -mtune 何やってるか

    概要 gcc -mtune=hoge ってあんまよくわからず付けてるけど意味あんの? 効果 前のk10 vs coremaみたいな感じでparsecをひととおり動かした -O2 の時間を1.0とした時の処理時間の比 app |-O2 -mtune-native streamcluster | 1.016 canneal | 1.016 vips | 0.954 bodytrack | 0.966 x264 | 1.049 blackscholes | 0.986 swaptions | 0.981 ferret | 0.997 なんらかの効果がある…ように見える…? (ネタバレ: -march=avxが付いてて、それの効果が出ている) 超簡単にGCCのコード解説 gcc/*.c アーキ非依存のコード gcc/config/i386/* i386のコード gcc/config/i386/i3

    masudaK
    masudaK 2012/04/20
    ふむー。
  • jemallocとかLD_PRELOADについて調べてみた - As a Futurist...

    何周遅れか分かりませんが調べてみました。僕の理解は浅いので間違っている可能性大ですが自分用にメモしておきます。 malloc とは? C 言語ではmallocという関数を使って、使いたいメモリを実行中に割り当てることができます。例えば Wikipedia によればこんな感じ(適当に main 足してます)。 #include <stdlib.h> int main() { /* 10個のintの配列のためのメモリを確保 */ int *ptr = malloc(sizeof (int) * 10); if (ptr == NULL) exit(EXIT_FAILURE); /* メモリを確保できなかったので、exit */ /* 確保成功 */ } malloc – Wikipedia これを素朴に gcc でコンパイルすると、glibc(libc.so.6)が動的にリンクされます(ここら

    jemallocとかLD_PRELOADについて調べてみた - As a Futurist...
  • GCC 4.6.2が出たので手動インストール方法メモ(Linux) | さかな前線

    先週にRCが出て,昨日4.6.2が出ました. さすがにNightlyを常用するようなアレじゃないので,公式リリース待ってました. で,ディストロの標準パッケージではたいてい落とせないと思うので,手動インストールを. ということで,Linuxな人がgccを初めてイチからインストールするときの手順を簡単にまとめます. インストールしませう 私の手元の環境(ラボマシン)は,i7-920,3GB,Ubuntu 10.10 x86,gcc 4.4.5です. 各作業の所要時間を書いとくのでご参考にどうぞ. 置き換えではありません ここでしようとするのは非4.6系列のgccを4.6.2に置き換えるわけではありません. 例えばCUDA4.0なんかはgcc-4.4.x系でないと使えない…そういうようなことがあるので,4.6系列の新規追加インストール,という形になります. OpenCVも4.6.xじゃなんかビ

    masudaK
    masudaK 2011/12/23
  • gccの最適化オプション(1)

    今回は最適化オプションのまとめとLINK関連のオプションの補足,および出力の種類の制御オプションの補足,またIntel386とAMD x86-64オプションについて説明する. (筆者) 来は最適化オプションを付けなくとも理想的なコードを生成することがコンパイラの役目です.しかしそのようなレベルに達していない以上,使う側が理解して最適化オプションを付加してやらなければなりません. 特にこだわらないのであれば,普遍的な最適化をコマンド・オプション一つで行うことが可能です. ● -O この最適化オプションを付けることで,無理のない最適化を行うことができます.あまりコンパイル時間をかけず,メモリも消費しない程度に,コード・サイズと実行時間を減らす最適化を行います.なお,フレーム・ポインタなしでもデバッグをサポートできる機種では,-fomit-frame-pointerをオンにします. -O1オプ

  • 猫科研究所 - gcc option

    MinGW上で頻繁にgccを利用しているくせにすぐに忘れるのでメモ。-D,-I,-i,-L,-l等の一般的で分かり切ってるものは書かない。随時追加。 なお、正確にはGCCのオンラインマニュアルが存在するのでそちらを参照すべき。オプションの一覧(リンク先は4.5.xのもの)もある。だが、あまりに膨大すぎるのでこの記事では「よく使用するが意味を忘れがちなオプション」に関してのメモとする。 -f(no-)strict-aliasing 厳密な別名規約(aliasing rule)に則っているとみなすか、則っていないとみなすか。intの変数に対してshort*でアクセスするような行儀の悪いコードが無いと宣言できるなら-fstrict-aliasingにする。 #include <stdio.h> int main(int argc, char* argv[]){ int x = 0; short*

  • OBB vs AABB - Radium Software Development

    iPhoneの一般修理店は予約なしでも来店できる? 基的には飛び込みで修理に行ってもOK iPhoneを置いていたソファにうっかりと腰かけてしまい、パネルを割ってしまった、こんな時はスマホの一般修理店へ行きましょう。画面割れは、スマホやタブレットの故障原因として非常に多いものです。予約なしで突然お店に行っても平気かしらと、不安に思う方々もいらっしゃるかもしれません。結論としては特に問題はなく、予約なしで訪問しても画面割れの修理はお願いできます。 ただし他のサービス業のお店同様、予約なしの場合、お店が混雑していると順番待ちをしなければいけないです。特に繁盛しているスマホ修理のお店だと、行列が店内で出来ており、予約なしだと、自分の順番が巡ってくるまで長時間待たされる可能性があります。平日の朝、昼なら利用客が少ない場合が多く、飛び込みでも比較スムーズに修理が頼めます。 予約は入れた方が時短に、

  • [Gentoo Tips] CFLAGSの最適化オプションを探究してみる - into the Linux world

    以前、SHIMAさんトコを見ていたら「CFLAGS、CXXFLAGS、CHOSTの内容」の中で、 2) Pentium-M 1.4G,i855GM+ICH4M チップセット,gentoo-dev-sources使用マシン CFLAGS="-O3 -march= i686 -fomit-frame-pointer -funroll-loops -fforce-addr -pipe" CXXFLAGS="${CFLAGS}" CHOST="i686-pc-linux-gnu" と、書かれていた。「-funroll-loopsオプションと -fforce-addrオプション?、何処かで見たけど意味を知らないなぁ~」と…(^^;。 ところで、手元には FMV-BIBLO LOOX S9/70 (Crusoe TM5500 700MHz)がある。これはメインマシン FMV-BIBLO LOOX T7

    [Gentoo Tips] CFLAGSの最適化オプションを探究してみる - into the Linux world
  • CentOSでGCCのバージョンアップを行ってみる | レンタルサーバー・自宅サーバー設定・構築のヒント

    CentOSでGCCのバージョンアップを行ってみる

    masudaK
    masudaK 2011/08/10
  • 1