29 مستودعات
The process of emitting native processor instructions from an intermediate representation.
Distinct from Compile-Time Code Generation: Candidates cover UI code generation or IR graphs, but not the general capability of emitting optimized native machine code.
Explore 29 awesome GitHub repositories matching programming languages & runtimes · Machine Code Generation. Refine with filters or upvote what's useful.
Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro
Uses a common definition format to decouple data structures from specific language memory layouts.
Wasmtime is a WebAssembly runtime and sandboxed bytecode executor designed to run WebAssembly bytecode on a host system. It functions as an embeddable engine that integrates into applications through native APIs and language-specific bindings, as well as a standalone execution environment accessible via a command line interface. It is a WASI compatible runtime, implementing the WebAssembly System Interface to provide portable access to system resources. The engine utilizes a JIT compilation model to translate intermediate representation into optimized machine code for various CPU architecture
Translates target-independent intermediate representation into executable machine code optimized for various CPU architectures.
This project is a compiler development tutorial that provides a series of guides and exercises for building a complete compiler from scratch. It focuses on the implementation of a structured compilation pipeline to transform high-level source code into executable machine instructions. The project covers the creation of a machine code generator for specific processor architectures and a static analysis framework. This framework includes methodologies for implementing type checking and constant folding to verify logic correctness before the final execution phase. The instructional material enc
Provides the capability to emit native processor instructions from an intermediate representation for direct hardware execution.
This project is a multi-language compiler collection and cross-platform toolchain used to translate source code from various programming languages into optimized machine code for different hardware architectures. It provides a suite of tools including an optimizing compiler backend, a machine code generator, and a comprehensive runtime library suite that implements necessary execution environments and support functions. The system utilizes a multi-pass compilation pipeline and pluggable language front-ends to process source code into intermediate representations. It distinguishes itself throu
Converts intermediate representations into hardware-specific native instructions to ensure high performance on target CPUs.
GB Studio هي بيئة تطوير متكاملة مرئية ومحرك ألعاب لإنشاء ألعاب 8-بت لأجهزة Game Boy. تعمل كمترجم ROM للأجهزة القديمة يقوم بتحويل المنطق الرسومي إلى لغة تجميع Z80 أصلية وصور ثنائية متوافقة مع الأجهزة المحمولة الأصلية والمحاكيات. يعمل المشروع كأداة بناء متعددة المنصات، حيث يولد كلاً من ROMs الأجهزة الأصلية وبنيات متوافقة مع الويب من مصدر مشروع واحد. يستخدم واجهة سحب وإفلات لمنطق اللعبة وتصميم المشاهد، مما يسمح بإنشاء آليات اللعبة ووضع الأصول دون كتابة كود آلة منخفض المستوى. تتضمن مجموعة الأدوات خط أنابيب لمعالجة الصور والصوت الخام إلى تنسيقات ولوحات ألوان خاصة بالأجهزة. كما توفر قدرات تحليل الأداء لتحليل إحصائيات التوقيت وسجلات التنفيذ لتحسين استجابة البرمجيات على الأجهزة ذات الموارد المحدودة.
Translates project source files into a portable intermediate representation before generating final machine code for target platforms.
ChakraCore is an embeddable JavaScript engine and high-performance scripting runtime. It provides a just-in-time compiler that converts JavaScript source code into optimized machine code during runtime to increase execution speed and throughput. The engine utilizes a multi-tiered compilation pipeline and tiered machine code generation to balance startup time with execution speed. Memory is managed via a concurrent garbage collector that reclaims unreachable objects on background threads to minimize application pauses. The project provides capabilities for embedded JavaScript execution and au
Generates optimized native machine code across multiple tiers to increase overall execution throughput.
Compiles the same pipeline to run on CPUs and GPUs without algorithm changes.
Red is a programming language with a native compiler that translates high-level source code into standalone executables for Windows, macOS, and Linux without external runtime dependencies. It combines a cross-platform GUI development framework that renders native operating system widgets from a single codebase with a reactive data binding system that automatically synchronizes UI state with data sources. The language also includes an embedded DSL and parsing engine based on PEG grammar rules for defining and processing domain-specific languages within the language itself. The project distingu
Translates high-level Red code into a C-like intermediate representation before generating native machine code.
MMdnn هو محول ونظام ترحيل لنماذج التعلم العميق، مصمم لنقل معماريات الشبكات العصبية وأوزانها بين أطر عمل مختلفة مثل TensorFlow وPyTorch وKeras. يستخدم MMdnn تمثيلاً وسيطاً موحداً لفصل هياكل الشبكة وأوزانها عن تطبيقات أطر العمل المحددة، مما يتيح تحويل النماذج المدربة مسبقاً عبر بيئات مختلفة. يتميز المشروع بقدرته على توليد كود Python أصلي لإعادة بناء النماذج من تمثيلاتها الوسيطة، مما يسمح بإعادة بناء النماذج وضبطها بدقة في البيئات المستهدفة. كما يتضمن أدوات متخصصة لنشر النماذج على الأجهزة المحمولة، حيث يحول نماذج التعلم العميق إلى صيغ متوافقة مع الهواتف مثل CoreML وTensorFlow Lite. يوفر النظام مجموعة واسعة من القدرات تشمل تصور معمارية الشبكات العصبية لفحص هياكل الرسوم والبيانات الوصفية، بالإضافة إلى تنفيذ استدلال النماذج للتحقق من أن النماذج المحولة تحافظ على سلوكها ودقتها الأصلية. كما تعالج الأدوات المساعدة استرجاع الأوزان المدربة مسبقاً من المستودعات البعيدة وتجميع نقاط فحص النماذج القابلة للنشر.
Parses model files into a framework-neutral intermediate representation to facilitate visualization and conversion.
LuaJIT هو تنفيذ عالي الأداء للغة Lua ومترجم في الوقت الفعلي (JIT). يعمل كمحرك برمجة نصية مدمج ومترجم ثنائي ديناميكي يحول البايت كود المحمول إلى كود آلة أصلي أثناء التنفيذ. يركز المشروع على البرمجة النصية عالية الأداء من خلال ترجمة البايت كود إلى تعليمات خاصة بالبنية لتحقيق سرعات تنفيذ قريبة من كود C المترجم. يستخدم بيئة تشغيل خفيفة الوزن مصممة لتقليل حمل الذاكرة. يدعم النظام معالجة البيانات الثنائية عبر العمليات المنطقية (Bitwise)، ويمكّن إدارة المهام غير المتزامنة من خلال دمج C coroutines. كما يوفر قدرات لتوليد الكود في وقت التشغيل وإنشاء تعليمات كود آلة مخصصة.
Translates bytecode into native machine code during execution to optimize overall program performance.
go-ast-book is a collection of educational and technical resources focused on abstract syntax tree analysis, compiler development, and static code verification. It provides guides and manuals for parsing, traversing, and analyzing Go source code to extract semantic meaning. The project serves as a reference for building compiler frontends, covering the translation of high-level code into intermediate representations and single static assignment forms. It also provides instructions for using these techniques to develop language tooling and perform static code analysis. The resources cover a b
Details the transformation of high-level syntax trees into single static assignment form for optimized execution.
rust-cuda هو إطار عمل لبرمجة GPU ومترجم أجهزة يسمح بتطوير وتنفيذ النواة (kernels) عالية الأداء على أجهزة NVIDIA باستخدام Rust. يوفر غلافاً للمشغل (driver wrapper) لإدارة تخصيص ذاكرة الجهاز وتشغيل النواة، ويعمل بفعالية كنظام لكتابة منطق حساب GPU دون الاعتماد على C++. يتضمن المشروع مكتبة حسابية مع بدائيات محسنة للأجهزة لتسريع الشبكات العصبية وتتبع الأشعة المسرع بالأجهزة. ويستخدم سلسلة أدوات تجميع تترجم الكود المصدري إلى تمثيل وسيط منخفض المستوى للتنفيذ على معالجات الرسومات. يغطي إطار العمل إدارة موارد الجهاز، وتطوير النواة، ومحاكاة العمليات الحسابية ذات الدقة العالية. كما يدعم توليد الأرقام العشوائية على جانب الجهاز وتحسينات الحساب الخاصة بالهدف. تتوفر صور حاويات مهيأة مسبقاً لتبسيط توفير سلسلة أدوات المترجم وبيئة التطوير عبر بنيات أجهزة مختلفة.
Compiles Rust source code into a PTX-based intermediate representation for GPU execution.
Bosque هي لغة برمجة تجريبية ومنصة تطوير مصممة لبناء البرمجيات بمساعدة الآلة. تجمع بين دلالات البرمجة الوظيفية وبناء الجملة الإلزامي لفرض صحة المنطق وسلامة وقت التشغيل، مما يوفر بيئة آمنة من حيث النوع تستخدم نماذج بيانات منظمة للحفاظ على سلامة المعلومات طوال دورة حياة التطبيق. تتميز المنصة بالتكامل العميق مع أدوات التحقق الرسمية، بما في ذلك أدوات إثبات النظريات الآلية ومحركات التنفيذ الرمزي. من خلال تحويل الكود المصدري إلى تمثيل وسيط منتظم، يتيح النظام التفكير الآلي لإثبات غياب أخطاء وقت التشغيل وانتهاكات المنطق. علاوة على ذلك، تم تصميم وقت التشغيل لأداء يمكن التنبؤ به، باستخدام مترجم متخصص يلغي توقفات جمع القمامة لضمان زمن انتقال تنفيذ متسق. يوفر المشروع مجموعة شاملة من الأدوات للتطوير عالي الموثوقية، تغطي إدارة حزم المشاريع، وتتبع التبعيات، والتحقق الآلي من خصائص الكود. كما يدعم تصميم الواجهات المحايدة للغة، مما يسمح للمطورين بتعريف هياكل البيانات المشتركة وعقود الخدمة التي تضمن التحقق المتسق عبر مكونات البرمجيات المتنوعة.
Transforms source code into a standardized intermediate representation to enable automated analysis and formal verification of program logic.
Lottie هو محرك رسوم متحركة متجهية JSON ومشغل متعدد المنصات يعرض رسومات متحركة مستقلة عن الدقة. يعمل كمشغل وقت تشغيل يترجم تركيبات Adobe After Effects إلى رسوم متحركة في الوقت الفعلي باستخدام تمثيل وسيط قائم على JSON. يتميز المشروع بتمكين التحكم الديناميكي في أصول المتجهات في وقت التشغيل. يسمح بالتعديل البرمجي لخصائص الرسوم المتحركة، والألوان، وحالات التشغيل من خلال مسارات المفاتيح الهرمية والسمات الديناميكية. يتيح ذلك للرسوم المتحركة الاستجابة لتغييرات حالة التطبيق في الوقت الفعلي وإيماءات المستخدم. يغطي المحرك مجموعة واسعة من القدرات، بما في ذلك العرض المسرع بالأجهزة والتخزين المؤقت للنماذج للأداء العالي. يوفر تحكمًا شاملاً في التشغيل للبحث في الإطارات، وتكرار المقاطع، وتشغيل الأحداث، إلى جانب نظام عرض يدعم كاميرات ثلاثية الأبعاد، وتشكيل الأشكال، وتوليد المتجهات الإجرائي. تتم إدارة الأصول من خلال استيراد البيانات متعدد المصادر، ودعم الحزم المحلية، وعناوين URL للشبكة، وتنسيقات ملفات المتجهات المختلفة.
Uses a JSON-based intermediate representation to decouple design tool compositions from cross-platform runtime playback.
Pyston هو تطبيق لغة Python عالي الأداء ومترجم JIT. يعمل كبيئة تشغيل تنفذ كود Python مع الحفاظ على التوافق مع مواصفات اللغة القياسية. يسرع المشروع التنفيذ عن طريق ترجمة bytecode الخاص بـ Python إلى كود آلة أصلي أثناء تنفيذ البرنامج. يستخدم خط أنابيب تجميع متعدد المستويات وتحسين تنفيذ تكيفي للانتقال من التفسير إلى الكود المجمع بناءً على سلوك وقت التشغيل. يحافظ هذا التطبيق على توافق ثنائي مع Python C API القياسي لدعم الإضافات الأصلية. تتضمن بيئة التشغيل أدوات لتحسين الأداء والمقارنة المعيارية، بما في ذلك القدرة على التبديل بين مستويات التجميع وأوضاع المفسر. يوفر ميزات مراقبة وقابلية ملاحظة مثل تصدير الإحصائيات الداخلية وإسهاب وقت التشغيل القابل للتكوين لتسجيل التشخيص وتحليل التنفيذ.
Translates frequently executed Python bytecode into native machine instructions to increase execution speed.
LLVM هي بنية تحتية معيارية للمترجمات (compiler infrastructure) وإطار عمل يتكون من مجموعة من المكتبات القابلة لإعادة الاستخدام لبناء واجهات اللغات وأدوات التحسين. تعمل كآلة افتراضية منخفضة المستوى توفر تمثيلاً وسيطاً (intermediate representation) وخط أنابيب للتحسين لتمكين توليد كود مستقل عن لغة البرمجة. يوفر المشروع مجموعة أدوات للترجمة في الوقت الفعلي (JIT compilation)، حيث يقوم بتحويل التمثيلات الوسيطة إلى كود آلة أثناء التشغيل للتنفيذ الفوري. يتيح تصميمه المعياري للمطورين إنشاء واجهات لغات مخصصة وبيئات تشغيل عالية الأداء عبر معماريات مستهدفة متعددة. تغطي البنية التحتية تحسين الكود عالي الأداء وتنسيق سلاسل أدوات البرمجيات عبر المنصات، بما في ذلك دمج المترجمات، وبيئات التشغيل، والمصححات (debuggers).
Implements an intermediate representation using static single assignment form to simplify data flow analysis and optimization.
Yosys هو أداة تركيب منطق رقمي وتركيب RTL تحول كود لغة وصف الأجهزة إلى تمثيلات على مستوى البوابة محسنة. تعمل كمحسن منطق أجهزة وأداة تحقق رسمية، مما يوفر إطار عمل لتحويل تمثيلات الدوائر العامة إلى خلايا مكتبة تقنية محددة لمنصات الأجهزة المستهدفة. يخدم المشروع كأداة أتمتة تصميم الأجهزة من خلال بيئة قابلة للبرمجة تُستخدم لتنفيذ تسلسلات من أوامر التركيب. تسمح هذه الأتمتة بإدارة سير عمل الأجهزة الرقمية المعقدة، ودمج تركيب تصميم RTL مع تعيين خلية التكنولوجيا. تشمل قدرات التحقق والتحليل الخاصة به فحص النموذج الرمزي والتحقق من تكافؤ التصميم. تدعم هذه الأدوات التحقق الرسمي من الأجهزة من خلال فحص خصائص السلامة والحيوية وإنشاء مقاعد اختبار المحاكاة لضمان مطابقة التصميمات لمواصفاتها الأصلية.
Uses directed graphs of cells and nets as an intermediate representation for hardware design analysis and transformation.
AsmJit هو مولد كود آلة في وقت التشغيل (Runtime) وخلفية مترجم JIT تترجم التعريفات عالية المستوى إلى تعليمات معالج قابلة للتنفيذ. يوفر واجهة برمجة تطبيقات موحدة لإصدار التعليمات ومديراً للذاكرة القابلة للتنفيذ لتخصيص وحماية صفحات الذاكرة الافتراضية عبر بنيات CPU متعددة. تعمل المكتبة كمحرك تجميع لـ x86 وARM، وتدعم توليد التجميع عبر المنصات من خلال خلفية موحدة. تتيح إنشاء كود آلة محسن لمعالجات مختلفة مع الحفاظ على قاعدة كود واحدة. يغطي المشروع تجريدات النظام منخفضة المستوى بما في ذلك تخصيص السجلات، واتفاقيات الاستدعاء الخاصة بالبنية، والأدوات الثنائية الديناميكية. يدير ترجمة التمثيلات الوسيطة إلى كود ثنائي باستخدام حل الإزاحة القائم على التسميات والإصدار المباشر إلى المخزن المؤقت.
Produces optimized machine code for multiple CPU architectures from a single unified API.
Open Model Zoo هي مجموعة منسقة من نماذج التعلم العميق المدربة مسبقاً والمحسنة المصممة للاستنتاج عالي الأداء باستخدام OpenVINO. تعمل كمستودع نماذج وإطار عمل نشر يبسط دمج الشبكات العصبية في بيئات الإنتاج. يستخدم المشروع بياناً مركزياً وسجلاً مؤصلاً لأتمتة تنزيل وتنظيم أوزان النماذج والبيانات الوصفية. ويتضمن أدوات لقياس أداء الاستنتاج والتحقق من دقة النموذج من خلال مقارنة المخرجات مقابل موترات الحقيقة الأرضية (ground-truth) لتحديد فقدان الدقة. يوفر النظام البيئي تطبيقات مرجعية وبنية تجريبية نمطية لفصل محركات الاستنتاج عن منطق التطبيق. تدعم هذه الأدوات تنفيذ مهام رؤية الحاسوب من خلال أغلفة قياسية تجرد متطلبات المعالجة المسبقة والمعالجة اللاحقة.
Translates diverse deep learning framework formats into a unified intermediate representation for hardware-independent execution.
هذا المشروع عبارة عن مترجم تعمية (obfuscator) لـ LLVM ومُعمي كود آلي مصمم لحماية تطبيقات C++ من فك التجميع والتحليل الثابت. يعمل كإطار عمل تمرير (pass framework) لـ LLVM يقوم بتحويل التمثيل الوسيط إلى كود آلي معقد لمنع الهندسة العكسية لمنطق البرنامج. تنفذ الأداة تقوية أمن الثنائيات وتدابير مكافحة الهندسة العكسية لحماية الملكية الفكرية. وهي تحقق ذلك عن طريق تعديل خط أنابيب التجميع لإخفاء تدفق التحكم الأصلي وهياكل البيانات. تتضمن عملية التحويل تسطيح تدفق التحكم، وحقن المسندات الغامضة (opaque predicates)، واستبدال التعليمات. كما تزيد من تعقيد الثنائي من خلال إدراج الكود الميت وتعديل تعليمات الآلة مع الحفاظ على دلالات التنفيذ الأصلية.
Implements low-level modification of machine instructions to protect binaries from static analysis.