gcc4.5发布了,还支持龙芯? - 龙芯软件开发- 龙芯论坛(loongson forum ...
本帖{zh1}由 mxcai2005 于 2010-4-18 11:41 编辑


GCC 4.5 Release Series
Changes, New Features, and Fixes
Caveats

    * GCC now requires the MPC library in order to build. See the prerequisites page for version requirements.
    *

      Support for a number of older systems and recently unmaintained or untested target ports of GCC has been declared obsolete in GCC 4.5. Unless there is activity to revive them, the next release of GCC will have their sources permanently removed.

      The following ports for individual systems on particular architectures have been obsoleted:
          o IRIX releases before 6.5 (mips-sgi-irix5*, mips-sgi-irix6.[0-4])
          o Solaris 7 (*-*-solaris2.7)
          o Tru64 UNIX releases before V5.1 (alpha*-dec-osf4*, alpha-dec-osf5.0*)
          o Details for the IRIX, Solaris 7, and Tru64 UNIX obsoletions can be found in the announcement.
    * Support has been removed for all the configurations obsoleted in GCC 4.4.
    * Support has been removed for the protoize and unprotoize utilities, obsoleted in GCC 4.4.
    * Support has been removed for tuning for Itanium1 (Merced) variants. Note that code tuned for Itanium2 should also run correctly on Itanium1.
    * GCC now generates unwind info also for epilogues. DWARF debuginfo generated by GCC now uses more features of DWARF3 than it used to do and also some DWARF4 features. GDB older than 7.0 is not able to handle either of these, so to debug GCC 4.5 generated binaries or libraries GDB 7.0 or later is needed. You can disable use of DWARF4 features with -gdwarf-3 -gstrict-dwarf options, or with -gdwarf-2 -gstrict-dwarf restrict GCC to just DWARF2 standard, but epilogue unwind info is emitted unconditionally whenever unwind info is emitted.
    * On x86 targets, code containing floating-point calculations may run significantly slower when compiled with GCC 4.5 in strict C99 conformance mode than they did with earlier GCC versions. This is due to stricter standard conformance of the compiler and can be avoided by using the option -fexcess-precision=fast; also see below.
    * The function attribute noinline no longer prevents GCC from cloning the function. A new attribute noclone has been introduced for this purpose. Cloning a function means that it is duplicated and the new copy is specialized for certain contexts (for example when a parameter is a known constant).

Java (GCJ)
New Targets and Target Specific Improvements
AIX

    * Full cross-toolchain support now available with GNU Binutils

ARM

    * GCC now supports the Cortex-M0 and Cortex-A5 processors.
    * GCC now supports the ARM v7E-M architecture.
    * GCC now supports VFPv4-based FPUs and FPUs with single-precision-only VFP.
    * GCC has many improvements to optimization for other ARM processors, including scheduling support for the integer pipeline on Cortex-A9.
    * GCC now supports the IEEE 754-2008 half-precision floating-point type, and a variant ARM-specific half-precision type. This type is specified using __fp16, with the layout determined by -mfp16-format. With appropriate -mfpu options, the Cortex-A9 and VFPv4 half-precision instructions will be used.
    * GCC now supports the variant of AAPCS that uses VFP registers for parameter passing and return values.

AVR

    * The -mno-tablejump option has been removed because it has the same effect as the -fno-jump-tables option.
    * Added support for these new AVR devices:
          o ATmega8U2
          o ATmega16U2
          o ATmega32U2

IA-32/x86-64

    * GCC now will set the default for -march= based on the configure target.
    * GCC now supports handling floating-point excess precision arising from use of the x87 floating-point unit in a way that conforms to ISO C99. This is enabled with -fexcess-precision=standard and with standards conformance options such as -std=c99, and may be disabled using -fexcess-precision=fast.
    * Support for the Intel Atom processor is now available through the -march=atom and -mtune=atom options.
    * A new -mcrc32 option is now available to enable crc32 intrinsics.
    * A new -mmovbe option is now available to enable GCC to use the movbe instruction to implement __builtin_bswap32 and __builtin_bswap64.
    * SSE math now can be enabled by default at configure time with the new --with-fpmath=sse option.
    * There is a new intrinsic header file, <x86intrin.h>. It should be included before using any IA-32/x86-64 intrinsics.
    * Support for the XOP, FMA4, and LWP instruction sets for the AMD Orochi processors are now available with the -mxop, -mfma4, and -mlwp options.
    * The -mabm option enables GCC to use the popcnt and lzcnt instructions on AMD processors.
    * The -mpopcnt option enables GCC to use the popcnt instructions on both AMD and Intel processors.

M68K/ColdFire

    * GCC now supports ColdFire 51xx, 5221x, 5225x, 52274, 52277, 5301x and 5441x devices.
    * GCC now supports thread-local storage (TLS) on M68K and ColdFire processors.

MeP

Support has been added for the Toshiba Media embedded Processor (MeP, or mep-elf) embedded target.
MIPS

    * GCC now supports MIPS 1004K processors.

    * GCC can now be configured with options --with-arch-32, --with-arch-64, --with-tune-32 and --with-tune-64 to control the default optimization separately for 32-bit and 64-bit modes.
    * MIPS targets now support an alternative _mcount interface, in which register $12 points to the function's save slot for register $31. This interface is selected by the -mcount-ra-address option; see the documentation for more details.
    * GNU/Linux targets can now generate read-only .eh_frame sections. This optimization requires GNU binutils 2.20 or above, and is only available if GCC is configured with a suitable version of binutils.
    * GNU/Linux targets can now attach special relocations to indirect calls, so that the linker can turn them into direct jumps or branches. This optimization requires GNU binutils 2.20 or later, and is automatically selected if GCC is configured with an appropriate version of binutils. It can be explicitly enabled or disabled using the -mrelax-pic-calls command-line option.
    * GCC now generates more heavily-optimized atomic operations on Octeon processors.
    * MIPS targets now support the -fstack-protector option.
    * GCC now supports an -msynci option, which specifies that synci is enough to flush the instruction cache, without help from the operating system. GCC uses this information to optimize automatically-generated cache flush operations, such as those used for nested functions in C. There is also a --with-synci configure-time option, which makes -msynci the default.
    * GCC supports four new function attributes for interrupt handlers: interrupt, use_shadow_register_set, keep_interrupts_masked and use_debug_exception_return. See the documentation for more details about these attributes.
GCC是一个用于linux系统下编程的编译器

GCC是GNU公社的一个项目。是一个用于编程开发的自由编译器。最初,GCC只是一个C语言编译器,它是GNU C Compiler 的英文缩写。随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含众多语言的编译器了。其中包括 C,C++,Ada,Object C和Java等。所以,GCC也由原来的GNU C Compiler变为GNU Compiler Collection。也就是 GNU编译器家族的意思。当然,如今的GCC借助于它的特性,具有了交叉编译器的功能,即在一个平台下编译另一个平台的代码。
  直到现在,GCC的历史仍然在继续,它的xx仍然被人所传颂。而且更重要的是GCCxx是一款免费的自由软件,加之其强大的功能所以深受广大用户的喜爱。

                                                                                                                    ——摘自百度百科

在龙芯论坛混,竟然有人不知道gcc。晕。
郑重声明:资讯 【gcc4.5发布了,还支持龙芯? - 龙芯软件开发- 龙芯论坛(loongson forum ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——