Optimasi Global
Dilakukan dengan analisis flow, yaitu suatu graph berarah yang menunjukkan jalur yang mungkin selama eksekusi program. Ada 2 kegunaan optimasi global, yaitu bagi para programmer dan untuk compiler itu sendiri.
Dilakukan dengan analisis flow, yaitu suatu graph berarah yang menunjukkan jalur yang mungkin selama eksekusi program. Ada 2 kegunaan optimasi global, yaitu bagi para programmer dan untuk compiler itu sendiri.
1. Bagi Programmer
a.Unreachable / dead code : Kode yang tidak pernah dieksekusi
Misalnya :
X := 5;
IF X = 0 THEN
A := A + 1
Instruksi
A := A + 1
X := 5;
IF X = 0 THEN
A := A + 1
Instruksi
A := A + 1
Tidak pernah dikerjakan karena kondisi X tidak pernah menjadi 0, sehingga memperlambat proses.
b.Unused parameter : parameter yang tidak pernah digunakan dalam prosedur
b.Unused parameter : parameter yang tidak pernah digunakan dalam prosedur
Misalnya :
Procedure penjumlahan(a,b,c; Integer);
Var x : integer;
Begin
x := a + b;
End
Procedure penjumlahan(a,b,c; Integer);
Var x : integer;
Begin
x := a + b;
End
Parameter c tidak pernah digunakan sehingga tidak perlu diikutsertakan dikarenakan pada prosedur penjumlahan c tidak pernah dikenakan suatu proses atau nilai
c.Unused variable : variabel yang tidak pernah digunakan dalam program.
c.Unused variable : variabel yang tidak pernah digunakan dalam program.
Misalnya :
Var a,b : Integer;
Begin
a := 5;
end;
Var a,b : Integer;
Begin
a := 5;
end;
Variabel b tidak pernah digunakan dalam manipulasi, sehingga tidak perlu dideklarasikan
d.Variable : variabel yang dipakai tanpa nilai awal
d.Variable : variabel yang dipakai tanpa nilai awal
Misalnya :
Var a,b : Integer;
Begin
a := 5;
a := a + b;
end;
Var a,b : Integer;
Begin
a := 5;
a := a + b;
end;
Variabel b digunakan tetapi tidak memiliki harga awal
2.Bagi Compiler
a.Meningkatkan efisiensi eksekusi program
b.Menghilangkan useless code / kode yang tidak terpakai
2.Bagi Compiler
a.Meningkatkan efisiensi eksekusi program
b.Menghilangkan useless code / kode yang tidak terpakai