問題タブ [intermediate-language]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
85 参照

java - ヒープを設定する大きさをどのようにして知ることができますか?

私はJavaを中間言語に変換しようとしており、中間言語がどのように機能するかを理解している最中です。

私は元のJavaコードを持っています:http://cs.ucla.edu/classes/spring11/cs132/cs132/mj/Factorial.java

そして、私は中間コード表現(VAPOR)を持っています:http://cs.ucla.edu/classes/spring11/cs132/kannan/vapor-examples/Factorial.vapor

別のセットは次のとおりです。Javaの場合:http://cs.ucla.edu/classes/spring11/cs132/cs132/mj/BubbleSort.java

VAPORの場合:http://cs.ucla.edu/classes/spring11/cs132/kannan/vapor-examples/BubbleSort.vapor

私の質問は、すべてのVAPORコードにt.0 = HeapAllocZ(x)(がxありますint)があります。コンバーターがヒープサイズをsizeにする必要があるとどのように判断するのか疑問に思いますx。ではFactorial.vapor、に設定されてい4ます。ではBubbleSort.vapor、に設定されてい12ます。

ありがとう!

0 投票する
2 に答える
1660 参照

perl - Perl用のLLVMバックエンドはありますか?

Perlに変換したいCで書かれたプロジェクトがあります。私の友人はLLVMの使用を提案しました。Clangを使用してCコードをLLVMアセンブリにコンパイルしました。現在、この中間表現をPerlに変換しようとしていますが、そのバックエンドが見つからないようです。誰かが私を正しい方向に向けてくれませんか?

0 投票する
0 に答える
315 参照

c - gcc .ssaファイルを直接実行することは可能ですか?そうでない場合、コンパイルする方法は?

この質問は少し古風ですが、マニュアルのこのセクションで答えを見つけるのに苦労しています。

CプログラムのSSAを次のようなファイルにダンプすると、次のようになります。

~$ gcc -fdump-tree-ssa program_name.c

ssa中間表現から直接実行するにはどうすればよいですか? を介してこれを行うことができない場合は、ダンプgccをコンパイルする方法に興味があります。別のIRを使用しているため、.ssa実行できないと思います。LLVMgcc


比較のために、clang/llvmで次のように簡単に実行できます。

~$ lli program_name_clangbit

...次のようなものでコンパイルすると仮定します:

~$ clang program_name.c -S -emit-llvm -o program_name_clangbit

0 投票する
2 に答える
1619 参照

assembly - LLVM アセンブリ言語はどの程度安定していますか?

LLVM Language Referenceには、使用できると記載されています

ディスク上のビットコード表現として (Just-In-Time コンパイラによる高速読み込みに適しています)

この表現はどの程度安定していますか? たとえば、現在 LLVM 3.1 を使用して生成し、将来の LLVM、たとえば 3 年後の架空の LLVM 4.5 を使用して使用できると期待できますか?

外部依存関係がないと仮定すると、それを使用して別のアーキテクチャ用のバイナリを生成できますか?

0 投票する
7 に答える
49442 参照

language-agnostic - バックパッチとはどういう意味ですか?

とはbackpatchingどういう意味ですか? 簡単な例で説明してください。

0 投票する
1 に答える
149 参照

c++ - llvm エラー: 複数のランディング パッド サクセサが見つかりました

llvm には、livenessdead Basic Block正しいレジスタ クラスなどのさまざまなパラメーターに基づいて正確性をMachineVerifierチェックするパスがあります。最近、MachineVerifier パスからこのエラーに遭遇しました。ランディングパッドの後継者が複数いるのはなぜいけないのだろう?このエラーが発生している例では、レイアウト (IR) は次のようになっています。MachineFunction

例外が発生すると、例外処理があいまいになるということですか。誰か説明してくれませんか。ありがとう。

0 投票する
3 に答える
11160 参照

string - スキームで文字列のリストを1つの文字列に変換する方法は?

たとえば、私は持ってい(list "a" "1" "b" "2" "c" "3")ます。

ここで、このリストを 1 つにまとめたいと思います"a1b2c3"

それ、どうやったら出来るの?

ありがとうございました。

0 投票する
1 に答える
196 参照

c# - コンパイラは不要/冗長なアップキャストを最適化しますか、それとも IL をまったく生成しますか?

冗長なキャストは最適化されますか? コンパイラが不要なダウンキャスト (つまりcastclass) を最適化していないことがわかります。しかし今、私はより単純なケースに興味があります。この質問は参照タイプのみに関係し、 には関係ありませんboxing

upcastそれはILを生成しないように思われるため、冗長な明示的なupcastコストはまったくかかりませんか? upcastまたは、IL 命令は型がないため、舞台裏で冗長な明示的なパフォーマンス コストが依然として存在しますか?

または、upcast は時々 IL 命令を生成しますか?

0 投票する
2 に答える
3537 参照

c# - ILコードを発行する必要があるのはなぜですか?

私は非常に大規模なコード ベースで作業しており、今日IL code、通常のclass.

出力される IL コードを含むプロジェクトは、Service Locator MSDN Desctiptionの実装でした。

これを行うことの利点は何ですか?また、言語を使用するのではなく、なぜこれを行うのでしょうか?C#