Remember me

Lost Password?

Register now!


Who's Online
34 user(s) are online (9 user(s) are browsing News)

Members: 1
Guests: 33

walkero, more...

Support us!

Recent OS4 Files

Recent Replied Topics
Topic Replies Last Post
AmigaOS4 SDL PoP 10 (372) jabirulo Yesterday 22:41
Amiga Classic Workbench like having two different environments 5 (179) Lio Yesterday 22:11
Amiga Classic Need AmigaOS 3.9 catalog cd and ct files 9 (248) ancalimon Yesterday 19:46
AmigaOS4 AmiDVD doesn't recognize the drive 0 (91) Paul 8/10 20:38
AmigaOS4 RNOPublisher - A new PDF creator program 3 (154) jPV 8/10 17:55
AmigaOS4 Amiupdate settings? 10 (777) Sbaitso 8/9 14:58
AmigaOS4 The OpenGL ES 2.0 thread [1][2][3][4] 68 (14844) kas1e 8/8 16:02
AmigaOS4 Shaderjoy 1.14 [1][2] ... [11][12][13][14] 273 (17707) Capehill 8/8 7:18
AmigaOS4 Need for Speed SE Amiga OS4 port? 2 (186) utri007 8/7 23:47
AmigaOS4 atheros wlan device is working [1][2] 35 (2575) ncafferkey 8/7 23:41
AmigaOS4 URL prefs 9 (360) nbache 8/7 23:24
AmigaOS4 StormC 5 5 (284) jap 8/7 13:40
AmigaOS4 SMTube api key 0 (108) white 8/6 9:10
E-UAE E-UAE keyboard configuration 3 (179) white 8/6 9:09
AmigaOS4 Classifieds working? 1 (161) walkero 8/5 20:00
[View all topics]  [Forum Settings]
Software News : VBCC 0.9d released (30-Dec-2014)
Posted by salass00 on 2015/1/13 18:58:10 (1021 reads) News by the same author
Software News

VBCC is a highly optimizing portable and retargetable ISO C compiler. It supports ISO C according to ISO/IEC 9899:1989 and a subset of the new standard ISO/IEC 9899:1999 (C99).


Changes since last release:

* New libcall interface makes all backends generate much better code, when doing a library call (e.g. for 64-bit arithmetics or soft-float).
* Supports C99 __func__.
* Fixed some cases where volatile was not respected.
* Fixed compiler crash when main() does not return int in C99 mode.
* Do not perform algebraic optimizations on "pointer - pointer". Makes (char *)p - (char *)0 being treated as integer again.
* Relaxed rules for constant expressions involving conditional expressions. Fixes for example int x = 1<2?3:4 to be accepted as a constant expression.
* Added diagnosis for empty struct/array initializers.
* Fixed possible memory corruption with string constants of exactly 128 bytes length.
* Stricter propagation of constants/VARADRs.
* Do not emit unused local static variables in lower optimization levels as well.
* Fixed problems with (void)((condition) || func()).
* PPC: Fixed output of negative pointer constants on 64 bit hosts.
* 68k: -sc (small code) works again, since switching from PhxAss to vasm.
* 68k: New option -fastcall to pass function arguments in scratch registers.
* 68k: New option -fp2scratch to use fp2 as an additional scratch register.
* 68k: Fixed bug with word/long register size in indexed addressing mode.
* 68k: Conversion of signed char to int, with 16 bit integer setting, fixed.
* 68k: Fixed wrong alignment assumptions on pointer references.
* 68k: Avoid certain addressing modes for soft-float ICs. This caused an index register to be used before it had been restored from the stack.
* 68k: Fixed return register for long double.
* 68k: Fixed incorrect order of restoring pushed registers during a 16 bit to 64 bits integer conversion.
* 68k: Overwriting FP-register in float to unsigned conversion fixed.
* 68k: Fixed bug with -(An)/(An)+ and internal libcalls.
* ColdFire: 64bit add/sub with constants.
* ColdFire: Corrected stack-adjustment for pushflag in bottom of function. In some case the stack was adjusted 4 bytes too far. Crashed on return.
* ColdFire: Fixed bug with storing 64-bit values (stored0d1).
* vclib: Major rework for Atari. Most files are shared between M68k and ColdFire. Also the same headers can be used for 16- and 32-bit backends.
* vclib: libgem with all AES and VDI functions for Atari.
* vclib: Many C99 functions and features added to the 6888x, 68040 and 68060 math libraries.
* vclib: New m060.lib with math functions optimized for the 68060 FPU.
* vclib: Improved pow2() and pow10() for 68060.
* vclib: Fixed sqrt(float), sqrt(double), float to int64 and double to int64 in the softfloat library by using code from John R. Hauser's 2b release.
* vclib: Adapted all math libraries to the new libcall interface.
* vclib: sscanf() tried to read characters from a 0 filehandle in certain situations.
* vclib: Added missing ANSI-C89 functions strcoll() and strxfrm().
* vclib: m13.lib for Amiga Kickstart 1.x systems, using mathffp.library instead of mathieeesingbas.library.
* vclib: Fixed 68060 unsigned 64-bit modulo.
* AmigaOS/68k config files include -hunkdebug, so specifying -g on the commandline is sufficient now for getting line debug info.
* Frontend lowers priority under AmigaOS/MorphOS, so other user processes are no longer affected by the compiler.

Printer friendly page Send this story to a friend
The comments are owned by the author. We aren't responsible for their content.
Author Thread
Site sponsors
Advertise Here

Site statistics
Registered members
Logged in last:
  24 hours, 38
  7 days, 75
  30 days, 121

Top Posters
1 kas1e
kas1e 6354
2 Raziel
Raziel 3722
3 ChrisH
ChrisH 3553
4 samo79
samo79 3336
5 Chris
Chris 3240
6 orgin
orgin 3186
7 LiveForIt
LiveForIt 2799
8 Antique
Antique 2476
9 328gts
328gts 2402
10 Hans
Hans 2310

New Members
DrMefistO 08/10/2020
IconDesigner 08/05/2020
angelawhatson 08/05/2020
desrat 07/29/2020
tchomasz 07/22/2020
paulvandyk68 07/21/2020
madhumithasri 07/20/2020
Loggio 07/16/2020
htpmatt 07/04/2020
PlakativDruck 06/30/2020

Powered by XOOPS 2.0 © 2001-2016 The XOOPS Project