<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="style/detail_T.xsl"?>
<bibitem type="L4">   <ARLID>0380864</ARLID> <utime>20240103201233.3</utime><mtime>20121011235959.9</mtime>         <title language="eng" primary="1">Optimizing C Compiler and an ELF-Based Toolchain for the PicoBlaze Processor</title>  <publisher> <pub_time>2012</pub_time> </publisher>    <keyword>PicoBlaze</keyword>   <keyword>compiler</keyword>    <author primary="1"> <ARLID>cav_un_auth*0261496</ARLID> <name1>Sýkora</name1> <name2>Jaroslav</name2> <full_dept language="cz">Zpracování signálů</full_dept> <full_dept language="eng">Department of Signal Processing</full_dept> <department language="cz">ZS</department> <department language="eng">ZS</department> <institution>UTIA-B</institution> <garant>G</garant>  <fullinstit>Ústav teorie informace a automatizace AV ČR, v. v. i.</fullinstit> </author>   <source> <url>http://sp.utia.cz/index.php?ids=results&amp;id=pblazecc</url>  </source>        <cas_special> <project> <project_id>7H10001</project_id> <agency>GA MŠk</agency> <country>CZ</country> <ARLID>cav_un_auth*0272880</ARLID> </project> <project> <project_id>JU 100230</project_id> <agency>Artemis JU</agency> <country>XE</country> </project>  <abstract language="eng" primary="1">PicoBlaze is a simple RISC-style 8-bit processor core from Xilinx Inc. It is widely used in commercial, educational, and research FPGA applications due to its small resource footprint, excellent documentation, and a continued support from the vendor.  In the presented work we have implemented a complete C compiler toolchain for the processor that includes the LLVM-based C compiler, assembler, and an ELF-based linker. The C frontend supports the standard C99 syntax, with GNU extensions (mainly the asm keyword). The compiler backend uses standard target-independent optimizations such as loop unrolling, inlining, and extensive constant propagation across loops. The PicoBlaze code generator performs register allocation and simple peep-hole optimizations. Function parameters are passed both in registers and on stack. Several illustrative program examples are given in the documentation.</abstract>     <reportyear>2013</reportyear>  <RIV>JC</RIV>       <permalink>http://hdl.handle.net/11104/0211469</permalink>        <arlyear>2012</arlyear>       <unknown tag="mrcbU10"> 2012 </unknown> </cas_special> </bibitem>