প্রশ্ন ট্যাগ «llvm-codegen»

5
সি ++ স্ট্যান্ডার্ড কি একটি প্রোগ্রাম ক্র্যাশ করার জন্য একটি অনির্দেশিত পুলকে মঞ্জুরি দেয়?
আমি জানি যে সি ++ তে একটি "অপরিজ্ঞাত আচরণ" সংকলকটিকে যে কোনও কিছু করতে দেওয়ার অনুমতি দিতে পারে। তবে, আমি একটি ক্র্যাশ পেয়েছিলাম যা আমাকে অবাক করেছিল, কারণ আমি ধরে নিয়েছিলাম যে কোডটি যথেষ্ট নিরাপদ। এই ক্ষেত্রে, আসল সমস্যাটি কেবলমাত্র নির্দিষ্ট সংকলক ব্যবহার করে নির্দিষ্ট প্ল্যাটফর্মে ঘটেছিল এবং কেবলমাত্র অপটিমাইজেশন …

1
কেন মরিচা সংকলক কোডটি দুটি অপরিবর্তনীয় রেফারেন্সের উপনামটি দিতে পারে না এই ধারণা করে কোডটি অপ্টিমাইজ করে না?
যতদূর আমি জানি, রেফারেন্স / পয়েন্টার আলিয়াসিং সংকলকটির অনুকূলিত কোড উত্পন্ন করার ক্ষমতা বাধাগ্রস্ত করতে পারে, যেহেতু অবশ্যই তাদের অবশ্যই জেনারেটেড বাইনারি ক্ষেত্রে সঠিকভাবে আচরণ করে যেখানে দুটি রেফারেন্স / পয়েন্টার প্রকৃতরূপে উপনাম রয়েছে ensure উদাহরণস্বরূপ, নিম্নলিখিত সি কোডে, void adds(int *a, int *b) { *a += *b; *a += …

2
240 বা ততোধিক উপাদানগুলির সাথে কোনও অ্যারে লুপ করার সময় কেন একটি বৃহত পারফরম্যান্স প্রভাব রয়েছে?
মরিচায় একটি অ্যারের উপরে যোগফল লুপ চালানোর সময়, আমি CAPACITY> = 240. CAPACITY= 239 প্রায় 80 গুণ বেশি গতিতে দেখলাম তখন একটি বিশাল পারফরম্যান্স ড্রপ লক্ষ্য করেছি । "সংক্ষিপ্ত" অ্যারেগুলির জন্য কোনও বিশেষ সংকলন অপ্টিমাইজেশন জাস্ট কাজ করছে? সঙ্গে সংকলিত rustc -C opt-level=3। use std::time::Instant; const CAPACITY: usize = 240; …

4
মরিচের 128-বিট পূর্ণসংখ্যা ger i128` কীভাবে 64-বিট সিস্টেমে কাজ করে?
মরিচায় 128-বিট পূর্ণসংখ্যা রয়েছে, এগুলি ডেটা টাইপের i128(এবং u128স্বাক্ষরযুক্ত স্বাক্ষরের জন্য) দ্বারা চিহ্নিত করা হয় : let a: i128 = 170141183460469231731687303715884105727; কীভাবে জাস্ট এই i128মানগুলি একটি 64-বিট সিস্টেমে কাজ করে; যেমন এটি গাণিতিক কীভাবে করে? যেহেতু, আমি যতদূর জানি, মানটি একটি x86-64 সিপিইউর একটি রেজিস্টারে ফিট করতে পারে না, সংকলকটি …

3
এলএলভিএম কেন একটি অতিরিক্ত কাজ করতে পারে?
এখানে এনাম সংজ্ঞা এবং একটি mainফাংশন সহ একটি সাধারণ সি ফাইল রয়েছে : enum days {MON, TUE, WED, THU}; int main() { enum days d; d = WED; return 0; } এটি নিম্নলিখিত এলএলভিএম আইআর স্থানান্তর করে: define dso_local i32 @main() #0 { %1 = alloca i32, align 4 %2 …
9 c  llvm  llvm-codegen 
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.