के साथ मशीन कोड कैसे उत्पन्न करें मैं वर्तमान में llvm का उपयोग कर एक कंपाइलर प्रोजेक्ट पर काम कर रहा हूं। मैंने उस बिंदु पर विभिन्न ट्यूटोरियल्स का पालन किया है जहां मेरे पास सिंटैक्स पेड़ बनाने के लिए एक पार्सर है और फिर पेड़ प्रदान किए गए आईआरबिल्डर का उपयोग करके एक एलएलएमएम मॉड्यूल में परिवर्तित हो जाता है।llvm
मेरा लक्ष्य निष्पादन योग्य बनाना है, और मैं उलझन में हूं कि आगे क्या करना है। मैंने पाया है कि सभी ट्यूटोरियल सिर्फ llvm मॉड्यूल बनाते हैं और Module.dump() का उपयोग करके असेंबली प्रिंट करते हैं। इसके अतिरिक्त, एकमात्र दस्तावेज जो मैं पा सकता हूं वह एलएलवीएम डेवलपर्स के लिए है, और परियोजना के उपयोगकर्ताओं को समाप्त नहीं करता है।
यदि मैं मशीन कोड जेनरेट करना चाहता हूं, तो अगले चरण क्या हैं? Llvm-mc प्रोजेक्ट ऐसा लगता है कि यह वही कर सकता है जो मैं चाहता हूं, लेकिन मुझे इस पर कोई भी दस्तावेज नहीं मिल रहा है।
शायद मैं llvm ऐसा कुछ करने की उम्मीद कर रहा हूं जो ऐसा नहीं करता है। मेरी उम्मीद है कि मैं एक मॉड्यूल बना सकता हूं, फिर एक एपीआई होगा जिसे मैं मॉड्यूल के साथ कॉल कर सकता हूं और एक लक्ष्य ट्रिपल और ऑब्जेक्ट फ़ाइल का उत्पादन किया जाएगा। मुझे एक जेआईटी बनाने पर दस्तावेज और उदाहरण मिल गए हैं, और मुझे इसमें रूचि नहीं है। मैं संकलित बाइनरी का उत्पादन कैसे कर रहा हूं।
मैं ओएस एक्स पर काम कर रहा हूं, अगर इसका कोई प्रभाव पड़ता है।