intermediate-code

    0熱度

    1回答

    是否有一種用於生成java文件中間代碼的工具?或者是否有任何可以幫助生成java文件的資源?謝謝。

    1熱度

    1回答

    我正在嘗試編寫一個僞代碼到c語言的翻譯器。哪些階段的編譯器是必要的? 我試過詞法,語法,語義,中間代碼就夠了,或者機器代碼是必需的。 我試過flex,野牛在上面的階段。這是對的嗎?

    16熱度

    7回答

    backpatching是什麼意思?請用一個簡單的例子來說明。

    0熱度

    2回答

    我試圖將Java轉換爲中間語言,並且正在研究如何使用中間語言。 我有原來的Java代碼:http://cs.ucla.edu/classes/spring11/cs132/cs132/mj/Factorial.java 而且我有中間代碼表示(蒸汽):http://cs.ucla.edu/classes/spring11/cs132/kannan/vapor-examples/Factorial.v

    0熱度

    2回答

    我想弄清楚yosys對我的verilog源做什麼,所以我已經將轉儲過程插入到我的腳本中。我認爲這些在手冊中描述爲ILANG?讀完Verilog後立即翻閱翻轉文件,在我看來,重要的東西已經丟失。例如,我有一組映射ascii字母代碼的參數定義。這些被列在ILANG中,但沒有任何價值。 是否有描述此輸出格式和解釋的文檔? Yosys似乎放棄了我的代碼的大部分內容,到目前爲止,我還無法確定它丟棄的內容與我

    6熱度

    4回答

    我目前正在使用編程語言。我花了一些時間用高級語言編寫解析器和解釋器(最顯着的是haXe)。 我有一些結果,我認爲其實很不錯,但現在我想讓它們變快。 我的想法是將輸入語言翻譯成C. 我的C知識僅限於您在大學學習的內容。除了一些練習之外,我從來沒有寫過實際的C程序。但我確信我可以讓它工作。 當然,我可以嘗試編寫LLVM的前端或生成MSIL或JVM字節碼。但我覺得現在學得太多了,實際上我並沒有看到太大的

    2熱度

    1回答

    我有一個LLVM IR代碼,看起來像這樣。 %8 = load i64* @tid, align 8 %arrayidx1 = getelementptr inbounds [16 x i32]* @h, i32 0, i64 %8 ;<-- %8 works fine here .............. %OldFuncCounter7 = load

    1熱度

    1回答

    我想在我的代碼中插入getelementpr指令,如下所示。 %i1 = getelementptr inbounds [16 x i64]* @Counters, i64 0, i64 %8 如何插入?我可以通過使用LoadInst和StoreInst類的構造函數來插入加載和存儲指令,但GetElementPtrInst的構造函數被聲明爲私有的,所以不能使用它。所以,我的問題是如何從我的代碼

    2熱度

    2回答

    在我的llvm代碼中,我嘗試檢查迭代器InsertPos是否指向基本塊的最後一條指令,代碼如下。 BasicBlock::iterator InsertPos = BB->begin(); LLVMContext &Context = BB->getContext(); while (!(isa<CallInst>(InsertPos) || (InsertPos

    0熱度

    1回答

    我在寫一個使用Flex和Bison的迷你Fortran編譯器。到目前爲止,我已經完成了詞法和語法分析。我在類型檢查中進行語義分析,現在我必須選擇一個IR。我的目標機器是MIPS。所以我想要基於MIPS IAS的最終代碼生成。所以我認爲一個好的IR是四倍的。但我想介紹一些優化。出於這個原因,我構建了一個DAG結構(使用散列表)。 IR有兩條路徑:四倍或DAG,然後四倍。 如果我將DAG作爲IR使用,