Keyingi foydalanish ma'lumotlari - Bu yerda biz har qanday operatorni ifodalovchi belgi sifatida + dan foydalandik. Agar uchta manzilli i bayonoti x = + y yoki x = y ko'rinishida bo'lsa, z ni e'tiborsiz qoldirib , qadamlar yuqoridagi bilan bir xil bo'ladi .
- E'tibor bering, (2) va (3) bosqichlar tartibini almashtirib bo'lmaydi, chunki x y yoki z bo'lishi mumkin.
- Masalan:-to'rtlik i : x := y op z;
Asosiy blokda o'zgartirish - Asosiy blok ifodalar to'plamini hisoblaydi.
- Transformatsiyalar kod sifatini yaxshilash uchun foydalidir.
- Asosiy bloklarga qo'llanilishi mumkin bo'lgan mahalliy optimallashtirishning ikkita muhim klassi
Asosiy bloklarning DAG vakili - Mahalliy optimallashtirishning ko'plab muhim usullari asosiy blokni DAG (yo'naltirilgan asiklik grafik) ga aylantirishdan boshlanadi.
- Asosiy blok uchun DAG qurilishi quyidagicha:
- Asosiy blokda paydo bo'ladigan o'zgaruvchilarning har bir boshlang'ich qiymatlari uchun DAGda tugun mavjud.
- Blok ichida har bir bayonot bilan bog'langan N tugun mavjud . N ning bolalari s tomonidan ishlatiladigan operandlarning s dan oldingi oxirgi ta'riflari bo'lgan bayonotlarga mos keladigan tugunlardir .
- 3. N tugun s da qo'llaniladigan operator tomonidan belgilanadi va N ga blokdagi oxirgi ta'rif bo'lgan o'zgaruvchilar ro'yxati biriktirilgan.
- 4. Ayrim tugunlar belgilangan chiqish tugunlaridir. Bu o'zgaruvchilar blokdan chiqishda jonli bo'lgan tugunlardir ; ya'ni ularning qiymatlari keyinchalik oqim grafigining boshqa blokida ishlatilishi mumkin. Ushbu "jonli o'zgaruvchilar" ni hisoblash global oqim tahlili uchun masaladir.
- Asosiy blokning DAG tasviri bizga blok tomonidan taqdim etilgan kodda kodni yaxshilash uchun bir nechta o'zgarishlarni amalga oshirishga imkon beradi.
- a) Biz mahalliy umumiy pastki ifodalarni , ya'ni allaqachon hisoblangan qiymatni hisoblaydigan ko'rsatmalarni yo'q qilishimiz mumkin.
- b) Biz o'lik kodni , ya'ni hech qachon ishlatilmaydigan qiymatni hisoblaydigan ko'rsatmalarni yo'q qilishimiz mumkin.
- Bir-biriga bog'liq bo'lmagan gaplarni qayta tartiblashimiz mumkin ; bunday qayta tartiblash reestrda vaqtinchalik qiymatni saqlash vaqtini qisqartirishi mumkin.
- d) Biz algebraik qonunlarni uchta manzilli ko'rsatmalarning operandlarini qayta tartiblash uchun qo'llashimiz va ba'zan bu bilan hisoblashni soddalashtirishimiz mumkin.
Do'stlaringiz bilan baham: |