LLVM verzija 3.0
LLVM tim sa univerziteta u Ilinoji označava LLVM kao jednu kompajler strategiju za efektivnu optimizaciju, jedan virtuelni set instrukcija i kompajler infrastrukturu. Trenutno se vrše istraživanja o primeni u oblasti kompajlera, arhitekture, sigurnosti i operativnih sistema.
LLVM (Low Level Virtual Machine) definiše jedan set instrukcija koji se oslanja na RISC mašine ali pruža na raspolaganje širok spektar informacija i podataka o protoku informacija. Ovo sa jedne strane omogućava dobru transformaciju objektnog koda, a sa druge strane informacije mogu da se dodaju na program koji se trenutno izvršava. Ovim su moguće dalje transformacije u toku linkovanja, u toku rada i na samoj izvršnoj datoteci kao i kada program nije u radu.
U verziji 3.0 Clang je u potpunosti zameno llvm-gcc-Compiler. Generisanje koda je i dalje poboljšano tako što je registar za alokaciju ponovo napisan. Ovim bi trebalo da je omogućeno da registri bolje iskorišćavaju ciljni procesor. Interno predstavljanje prevedenog programa više puta je revidirano: Atomski pristup memoriji i uslovi redosleda takođe su dodati, izuzeci su implementirani iz početka kao i kompletan tip sistema. Generisanje koda za MIPS arhitekturu je sa "eksperimentalnog" dostiglo na "skoro završen" status. Informacije o kodu i brzini mogu da se izraze u formatima koji GNU alatima gcov i gprof mogu da se predstave.
Pored ovih poboljšanja tu su još mnogobrojna sitna poboljšanja, napravljena je i korektura internog API-a. Sve detaljne informacije možete pročitati ovde.
Info: llvm.org
Artikelaktionen