/[cmucl]/src/lisp/gencgc.c
ViewVC logotype

Diff of /src/lisp/gencgc.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.70.2.1 by rtoy, Fri Jun 9 16:05:19 2006 UTC revision 1.70.2.1.4.2 by rtoy, Mon Jun 19 02:15:00 2006 UTC
# Line 4234  trans_vector_long_float(lispobj object) Line 4234  trans_vector_long_float(lispobj object)
4234  }  }
4235  #endif  #endif
4236    
4237    #ifdef type_SimpleArrayDoubleDoubleFloat
4238    static int
4239    size_vector_double_double_float(lispobj * where)
4240    {
4241        struct vector *vector;
4242        int length, nwords;
4243    
4244        vector = (struct vector *) where;
4245        length = fixnum_value(vector->length);
4246        nwords = CEILING(length * 4 + 2, 2);
4247    
4248        return nwords;
4249    }
4250    
4251    static int
4252    scav_vector_double_double_float(lispobj * where, lispobj object)
4253    {
4254        return size_vector_double_double_float(where);
4255    }
4256    
4257    static lispobj
4258    trans_vector_double_double_float(lispobj object)
4259    {
4260        gc_assert(Pointerp(object));
4261        return copy_large_unboxed_object(object,
4262                                         size_vector_double_double_float((lispobj *)
4263                                                                PTR(object)));
4264    }
4265    #endif
4266    
4267  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
4268  static int  static int
# Line 4536  gc_init_tables(void) Line 4565  gc_init_tables(void)
4565  #ifdef type_ComplexLongFloat  #ifdef type_ComplexLongFloat
4566      scavtab[type_ComplexLongFloat] = scav_unboxed;      scavtab[type_ComplexLongFloat] = scav_unboxed;
4567  #endif  #endif
4568    #ifdef type_ComplexDoubleDoubleFloat
4569        scavtab[type_ComplexDoubleDoubleFloat] = scav_unboxed;
4570    #endif
4571      scavtab[type_SimpleArray] = scav_boxed;      scavtab[type_SimpleArray] = scav_boxed;
4572      scavtab[type_SimpleString] = scav_string;      scavtab[type_SimpleString] = scav_string;
4573      scavtab[type_SimpleBitVector] = scav_vector_bit;      scavtab[type_SimpleBitVector] = scav_vector_bit;
# Line 4562  gc_init_tables(void) Line 4594  gc_init_tables(void)
4594  #ifdef type_SimpleArrayLongFloat  #ifdef type_SimpleArrayLongFloat
4595      scavtab[type_SimpleArrayLongFloat] = scav_vector_long_float;      scavtab[type_SimpleArrayLongFloat] = scav_vector_long_float;
4596  #endif  #endif
4597    #ifdef type_SimpleArrayDoubleDoubleFloat
4598        scavtab[type_SimpleArrayDoubleDoubleFloat] = scav_vector_double_double_float;
4599    #endif
4600  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
4601      scavtab[type_SimpleArrayComplexSingleFloat] =      scavtab[type_SimpleArrayComplexSingleFloat] =
4602          scav_vector_complex_single_float;          scav_vector_complex_single_float;
# Line 4639  gc_init_tables(void) Line 4674  gc_init_tables(void)
4674  #ifdef type_ComplexLongFloat  #ifdef type_ComplexLongFloat
4675      transother[type_ComplexLongFloat] = trans_unboxed;      transother[type_ComplexLongFloat] = trans_unboxed;
4676  #endif  #endif
4677    #ifdef type_ComplexDoubleDoubleFloat
4678        transother[type_ComplexDoubleDoubleFloat] = trans_unboxed;
4679    #endif
4680      transother[type_SimpleArray] = trans_boxed_large;      transother[type_SimpleArray] = trans_boxed_large;
4681      transother[type_SimpleString] = trans_string;      transother[type_SimpleString] = trans_string;
4682      transother[type_SimpleBitVector] = trans_vector_bit;      transother[type_SimpleBitVector] = trans_vector_bit;
# Line 4665  gc_init_tables(void) Line 4703  gc_init_tables(void)
4703  #ifdef type_SimpleArrayLongFloat  #ifdef type_SimpleArrayLongFloat
4704      transother[type_SimpleArrayLongFloat] = trans_vector_long_float;      transother[type_SimpleArrayLongFloat] = trans_vector_long_float;
4705  #endif  #endif
4706    #ifdef type_SimpleArrayDoubleDoubleFloat
4707        transother[type_SimpleArrayDoubleDoubleFloat] = trans_vector_double_double_float;
4708    #endif
4709  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
4710      transother[type_SimpleArrayComplexSingleFloat] =      transother[type_SimpleArrayComplexSingleFloat] =
4711          trans_vector_complex_single_float;          trans_vector_complex_single_float;
# Line 4735  gc_init_tables(void) Line 4776  gc_init_tables(void)
4776  #ifdef type_ComplexLongFloat  #ifdef type_ComplexLongFloat
4777      sizetab[type_ComplexLongFloat] = size_unboxed;      sizetab[type_ComplexLongFloat] = size_unboxed;
4778  #endif  #endif
4779    #ifdef type_ComplexDoubleDoubleFloat
4780        sizetab[type_ComplexDoubleDoubleFloat] = size_unboxed;
4781    #endif
4782      sizetab[type_SimpleArray] = size_boxed;      sizetab[type_SimpleArray] = size_boxed;
4783      sizetab[type_SimpleString] = size_string;      sizetab[type_SimpleString] = size_string;
4784      sizetab[type_SimpleBitVector] = size_vector_bit;      sizetab[type_SimpleBitVector] = size_vector_bit;
# Line 4761  gc_init_tables(void) Line 4805  gc_init_tables(void)
4805  #ifdef type_SimpleArrayLongFloat  #ifdef type_SimpleArrayLongFloat
4806      sizetab[type_SimpleArrayLongFloat] = size_vector_long_float;      sizetab[type_SimpleArrayLongFloat] = size_vector_long_float;
4807  #endif  #endif
4808    #ifdef type_SimpleArrayDoubleDoubleFloat
4809        sizetab[type_SimpleArrayDoubleDoubleFloat] = size_vector_double_double_float;
4810    #endif
4811  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
4812      sizetab[type_SimpleArrayComplexSingleFloat] =      sizetab[type_SimpleArrayComplexSingleFloat] =
4813          size_vector_complex_single_float;          size_vector_complex_single_float;
# Line 4990  valid_dynamic_space_pointer(lispobj * po Line 5037  valid_dynamic_space_pointer(lispobj * po
5037  #ifdef type_ComplexLongFloat  #ifdef type_ComplexLongFloat
5038              case type_ComplexLongFloat:              case type_ComplexLongFloat:
5039  #endif  #endif
5040    #ifdef type_ComplexDoubleDoubleFloat
5041                case type_ComplexDoubleDoubleFloat:
5042    #endif
5043              case type_SimpleArray:              case type_SimpleArray:
5044              case type_ComplexString:              case type_ComplexString:
5045              case type_ComplexBitVector:              case type_ComplexBitVector:
# Line 5032  valid_dynamic_space_pointer(lispobj * po Line 5082  valid_dynamic_space_pointer(lispobj * po
5082  #ifdef type_SimpleArrayLongFloat  #ifdef type_SimpleArrayLongFloat
5083              case type_SimpleArrayLongFloat:              case type_SimpleArrayLongFloat:
5084  #endif  #endif
5085    #ifdef type_SimpleArrayDoubleDoubleFloat
5086                case type_SimpleArrayDoubleFloat:
5087    #endif
5088  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
5089              case type_SimpleArrayComplexSingleFloat:              case type_SimpleArrayComplexSingleFloat:
5090  #endif  #endif
# Line 5111  maybe_adjust_large_object(lispobj * wher Line 5164  maybe_adjust_large_object(lispobj * wher
5164  #ifdef type_SimpleArrayLongFloat  #ifdef type_SimpleArrayLongFloat
5165        case type_SimpleArrayLongFloat:        case type_SimpleArrayLongFloat:
5166  #endif  #endif
5167    #ifdef type_SimpleArrayDoubleDoubleFloat
5168          case type_SimpleArrayDoubleDoubleFloat:
5169    #endif
5170  #ifdef type_SimpleArrayComplexSingleFloat  #ifdef type_SimpleArrayComplexSingleFloat
5171        case type_SimpleArrayComplexSingleFloat:        case type_SimpleArrayComplexSingleFloat:
5172  #endif  #endif
# Line 6250  verify_space(lispobj * start, size_t wor Line 6306  verify_space(lispobj * start, size_t wor
6306  #ifdef type_ComplexLongFloat  #ifdef type_ComplexLongFloat
6307                case type_ComplexLongFloat:                case type_ComplexLongFloat:
6308  #endif  #endif
6309    #ifdef type_ComplexDoubleDoubleFloat
6310                  case type_ComplexDoubleDoubleFloat:
6311    #endif
6312                case type_SimpleString:                case type_SimpleString:
6313                case type_SimpleBitVector:                case type_SimpleBitVector:
6314                case type_SimpleArrayUnsignedByte2:                case type_SimpleArrayUnsignedByte2:
# Line 6271  verify_space(lispobj * start, size_t wor Line 6330  verify_space(lispobj * start, size_t wor
6330  #endif  #endif
6331                case type_SimpleArraySingleFloat:                case type_SimpleArraySingleFloat:
6332                case type_SimpleArrayDoubleFloat:                case type_SimpleArrayDoubleFloat:
6333    #ifdef type_SimpleArrayDoubleDoubleFloat
6334                  case type_SimpleArrayDoubleDoubleFloat:
6335    #endif
6336  #ifdef type_SimpleArrayComplexLongFloat  #ifdef type_SimpleArrayComplexLongFloat
6337                case type_SimpleArrayLongFloat:                case type_SimpleArrayLongFloat:
6338  #endif  #endif

Legend:
Removed from v.1.70.2.1  
changed lines
  Added in v.1.70.2.1.4.2

  ViewVC Help
Powered by ViewVC 1.1.5