short : Optimizing ISO C compiler, PPC/WarpOS author : Volker Barthelmann, Frank Wille uploader : frank phoenix owl de (Frank Wille) type : dev/c version : 0.9f architecture : ppc-warpup Filetype : application/x-lzh-compressed Size : 913.90K Date : 10-Oct-18 Download : 💾
vbcc - portable ISO/ANSI C compiler (c) in 1995-2017 by Volker Barthelmann INTRODUCTION vbcc is a portable and retargetable ISO/ANSI C compiler. This archive contains the binaries for the compiler, preprocessor, assembler, linker, frontend, message browser, as well as several other tools to generate code for your installed targets. All major parts of this distribution (including compiler, preprocessor, libraries etc.) have been built using this system. FEATURES vbcc.. - is portable and retargetable - comes with a global optimizer that can e.g. do common subexpression elimination, constant propagation, function inlining and several other optimizations across functions and modules (depending on optimization level) - should be compliant to ANSI/ISO89 and partially ISO99 - can generate code that runs on a plain 68000 CPU - can generate code optimized for 020/030, 040 or 060 - can generate code that uses the 68881/2, 68040/060 FPUs directly and comes with appropriate math-libraries - can generate code that runs on PowerUp-boards, MorphOS systems and AmigaOS4 systems - generates standard Amiga-68k-objects, PPC-ELF-objects or WarpOS-EHF-objects - offers a lot of useful extensions like variable-attributes and #pragmas - comes with a message browser - offers a lot of error/warning messages that can be turned on/off separately WHAT'S NEW Some changes since V0.9e: * Changed licenses concerning commercial usage for AmigaOS/68k. * Power-of-two optimizations. * Warn when truncating constants. * Warn on hexadecimal escape sequence overflow. * Fixed some shortcut-optimzations that were calculating an expression in the target type even if that was larger due to casts. * Fixed -deps dependency generation for including local header files. * New option -no-cpp-warn to turn off all preprocessor warnings. * Fixed gcc-compatibility of #pragma pack() and documented it. * Fixed bug with CSE trying on non-scalars. * New config files for residentable programs and minimal startup codes (e.g. aos68kr and aos68km). * m68k: Struct copy was using byte-copy also for aligned data. * m68k: Some addressing mode fixes with Dn.W displacement. * m68k: Constants in -sd mode are put into the code section by default and into the small data section when -const-in-data is specified. * vclib/atari: Fixed problem with receiving a trash-character on stdin. * vclib/amiga: Include missing cia protos and inlines. * vclib/amiga: New startup code and linker support for residentable programs. * vclib/amiga: More C99 math functions. * vclib: New target m68k-kick13 (Kickstart 1.x with 1.x OS headers). * vclib: New target m68k-jaguar (Atari Jaguar). REQUIREMENTS To use vbcc you need: - an Amiga with OS 2.0 or higher - enough RAM (it is possible to translate small programs with 1MB, but for larger programs much more will be needed) Stuff that is not needed, but may be very useful: - harddisk - editor - make, touch etc. - the Amiga OS-includes (they can be found on certain CDs) - pipe-command (to use the message browser) Also you should know how to use the shell and you should know ANSI C (if you need a book I recommend (like everyone) "The C Programming Language, Second Edition, ANSI C" by Kernighan and Ritchie). LEGAL vbcc is copyright in 1995-2017 by Volker Barthelmann. This archive may be redistributed without modifications and used for non-commercial purposes. An exception for commercial usage is granted, provided that the target CPU is M68k and the target OS is AmigaOS. Resulting binaries may be distributed commercially without further licensing. In all other cases you need my written consent. This copyright applies to vc, vbcc and vsc. This archive may contain other tools (e.g. assemblers or linkers) which do not fall under this license. Please consult the corresponding documentation of these tools. Note that this distribution contains several programs, libraries etc. that are from different authors and are under different legal status. So always read the corresponding documentation to find out under what conditions a certain file may be used, distributed etc. DOCUMENTATION Look for documentation in the doc-subdirectory. First, read vbcc.pdf or vbcc.html to learn about the compiler and frontend. For the other tools like assemblers and linkers, consider the remaining documentation which can be found in this subdirectory. BUGREPORTS/COMMENTS If you think vbcc generates bad code, throws enforcer hits, crashes, seems to be not ISO-compliant etc. and the problem is not mentioned anywhere in this docs as known problem, please send a mail with your system configuration, the vbcc version, the command line you used, the source that caused the problem and a brief description of the problem to and/or Also if you find problems with the includes, the libraries or you have suggestions, dislikes etc. send us a mail. Corrections, improvements etc. of the manuals are appreciated, too. Volker Barthelmann Frank Wille
Zum Live Linux: