r134593 - in /branches/st/cli/gcc: config/cil32...

andreao@gcc.gnu.org andreao@gcc.gnu.org
Wed Apr 23 13:15:00 GMT 2008


Author: andreao
Date: Wed Apr 23 13:15:39 2008
New Revision: 134593

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=134593
Log:

New Snapshot from ST 2008-04-23 (rev 1062)

........
  Added the -mno-stloc-ldloc-removal flag
........
  if a STRING_CST is smaller than its type zero initialize the rest
........
  Bugfix in expansion of builtin object_size
........
  refactor emition of types (compare names using IDENTIFIER_NODE) 
  add function print_pinvoke_function (code to generate pinvokes moved out of gen_cil_fini)
  add missing prototypes of static functions 
........
  add expansion of builtins bcmp, bzero and bcopy using memcmp, memset and memmove (they are used in the testsuite)
........
  bugfix: change how names of anonymous structs/unions are created, they need to be unique
........
  add option -mlittle-endian: Assume target CPU is configured as little endian, compiler will generate initializers for little endian (no runtime check if assumption is correct)
........
  refactor linker options passed by the gcc driver
........
  Use a pointer map for storing the labels whose address has been taken 
  and their assigned IDs instead of reusing TREE_CHAIN (). This 
  avoids trashing the TREE_CHAIN () field of the labels which is 
  already used by GCC for other purposes. 
........
  new cil32 builtins added
   - CIL32_BUILT_IN_CPBLK
   - CIL32_BUILT_IN_INITBLK
   - CIL32_BUILT_IN_ENDIAN_SELECT,
       takes two pointersand returns the first if the target is Little Endian the second one otherwise
  
  collect all builtins in an array called cil32_builtins and enable GTY on it
  
  in tree-simp-cil
    use new builtins CPBLK and INITBLK to avoid pops
    use new builtins ENDIAN_SELECT instead of IS_LITTLE_ENDIAN to avoid control flow in initializers
........
  gcc prefixes assembler names that have to be emitted verbatin with a *
........
  Cleaned up the code for emitting computed GOTO statements
........
  The labels of a computed GOTO replacement switch were not always 
  emitted in the correct order, fixed.
........
  Issue an internal error instead of emitting a floordiv() call as we do 
  not have it implemented in libgcc4net.
........
  Register pragmas ivdep and loopdep.
........
  array attribute used to recognize valuetypes representing arrays
........
  fix call to vararg function (emit correct convertions)
........
  Added simplication of BIT_FIELD_REFs used for accessing scalar elements 
  inside vectors, this fixes 22 failures in the testsuite (and adds 11 
  passes). Also cleaned up the code that simplifies switches.
........
  Modified simp_lhs_bitfield_component_ref() to emit better code by using 
  less temporaries, folding unnecessary conversions and also removing 
  unnecessary copies and operations when dealing with constants.
........
  Modified simp_lhs_bitfield_component_ref () and simp_bitfield_ref () to 
  emit better code and handle properly more corner cases. This fixes 14 
  failures, 14 related unresolved cases and adds 28 passes to the test 
  suite.
........
  Removed the last free_cfg_annotation pass and replaced it with a garbage 
  collector invocation at the end of gen-cil. This removes 53 failures, 39 
  unresolved cases and adds 85 passes to the test suite.
........
  Unnecessary header files removed
........
  split print_valuetype_decl in 3 functions: print_enum_decl, print_array_decl and print_struct_union_decl
........
  change how CONST STRINGS are generated (their type now is different from array one)
  add attributes to string and array type definition to allow recognition by the CIL FE
........

Modified:
    branches/st/cli/gcc/config/cil32/bb-layout.c
    branches/st/cli/gcc/config/cil32/bit-stream.c
    branches/st/cli/gcc/config/cil32/cil32-protos.h
    branches/st/cli/gcc/config/cil32/cil32.c
    branches/st/cli/gcc/config/cil32/cil32.h
    branches/st/cli/gcc/config/cil32/cil32.opt
    branches/st/cli/gcc/config/cil32/emit-hints.c
    branches/st/cli/gcc/config/cil32/gen-cil.c
    branches/st/cli/gcc/config/cil32/rm-ldloc.c
    branches/st/cli/gcc/config/cil32/t-cil32
    branches/st/cli/gcc/config/cil32/tree-simp-cil-early.c
    branches/st/cli/gcc/config/cil32/tree-simp-cil.c
    branches/st/cli/gcc/config/cil32/tree-simp-cil.h
    branches/st/cli/gcc/passes.c



More information about the Gcc-cvs mailing list