cprc - C language အတွက် compact compiler အသစ်

Wayland ပရိုတိုကောကိုအခြေခံ၍ swc ပေါင်းစပ်ဆာဗာ၏ developer Michael Forney သည် C11 စံနှုန်းနှင့် GNU တိုးချဲ့မှုများကို ပံ့ပိုးပေးသည့် cproc compiler အသစ်ကို တီထွင်နေပါသည်။ ပိုမိုကောင်းမွန်အောင် လုပ်ဆောင်နိုင်သော ဖိုင်များကို ထုတ်လုပ်ရန်၊ စုစည်းသူသည် QBE ပရောဂျက်ကို နောက်ခံအဖြစ် အသုံးပြုသည်။ compiler ကုဒ်ကို C ဖြင့်ရေးသားထားပြီး အခမဲ့ ISC လိုင်စင်အောက်တွင် ဖြန့်ဝေထားသည်။

ဖွံ့ဖြိုးတိုးတက်မှု မပြီးပြတ်သေးသော်လည်း C11 သတ်မှတ်ချက်အများစုအတွက် လက်ရှိအဆင့်တွင် ပံ့ပိုးကူညီမှုကို အကောင်အထည်ဖော်ပြီးဖြစ်သည်။ လက်ရှိ ပံ့ပိုးမထားသော အင်္ဂါရပ်များထဲတွင် မပြောင်းလဲနိုင်သော အရှည်အခင်းများ၊ ကြိုပရိုဆက်ဆာ၊ PIE (ရာထူး သီးခြားကုဒ်) စီမံလုပ်ဆောင်နိုင်သော ဖိုင်များနှင့် မျှဝေထားသော ဒစ်ဂျစ်တိုက်များ၊ လိုင်းတပ်ဆင်သူ၊ "ရှည်လျားသောနှစ်ထပ်" အမျိုးအစား၊ _Thread_local အသေးစိတ်ဖော်ပြချက်၊ မတည်ငြိမ်သောအမျိုးအစားများ၊ ရှေ့ဆက်စာလုံးပါသော စာကြောင်းများ (L"...")။

တစ်ချိန်တည်းမှာပင်၊ cprc ၏စွမ်းရည်များသည် ကိုယ်တိုင်တည်ဆောက်ရန် လုံလောက်နေပြီဖြစ်သည်၊ mcpp၊ gcc 4.7၊ binutils နှင့် အခြားအခြေခံအပလီကေးရှင်းများ။ အခြား compilers များနှင့် အဓိကကွာခြားချက်မှာ ကျစ်လစ်သိပ်သည်းပြီး ရှုပ်ထွေးမှုမရှိသော အကောင်အထည်ဖော်မှုကို ဖန်တီးခြင်းအပေါ် အာရုံစိုက်ခြင်းဖြစ်သည်။ ဥပမာအားဖြင့်၊ backend သည် သင့်အား အဆင့်မြင့် compilers များ၏ စွမ်းဆောင်ရည် 70% ကို သရုပ်ပြနိုင်သော ကုဒ်ကို ဖန်တီးနိုင်သော်လည်း အဆိုပြုထားသော လုပ်ဆောင်နိုင်စွမ်းသည် ကြီးမားသော compilers များ၏ 10% အတွင်းဖြစ်သည်။ Glibc၊ bsd libc နှင့် Musl စာကြည့်တိုက်များနှင့်အတူ Linux နှင့် FreeBSD ပလပ်ဖောင်းများတွင် x86_64 နှင့် aarch64 ဗိသုကာများတည်ဆောက်ခြင်းကို ပံ့ပိုးပေးသည်။

source: opennet.ru

မှတ်ချက် Add