*参照元 [#bb6ca789]
#backlinks

*説明 [#yaa33bf9]
-パス: [[gcc-8.3/gcc/tree.c]]

-FIXME: これは何?
--説明


**引数 [#zb79b2d9]
-tree innertype
--
--[[gcc-8.3/gcc/tree]]
-poly_int64 nunits
--
--[[gcc-8.3/gcc/poly_int64]]
-machine_mode mode
--
--[[gcc-8.3/gcc/machine_mode]]


**返り値 [#ya5f5869]
-tree
--


**参考 [#a4f2ed76]


*実装 [#d3cbccc1]
 /* Create a new vector type node holding NUNITS units of type INNERTYPE,
    and mapped to the machine mode MODE.  Initialize its fields and build
    the information necessary for debugging output.  */
 
 static tree
 make_vector_type (tree innertype, poly_int64 nunits, machine_mode mode)
 {
   tree t;
   tree mv_innertype = TYPE_MAIN_VARIANT (innertype);
 
-
--[[gcc-8.3/gcc/TYPE_MAIN_VARIANT()]]

   t = make_node (VECTOR_TYPE);
   TREE_TYPE (t) = mv_innertype;
   SET_TYPE_VECTOR_SUBPARTS (t, nunits);
   SET_TYPE_MODE (t, mode);
 
-
--[[gcc-8.3/gcc/make_node()]]
--[[gcc-8.3/gcc/TREE_TYPE()]]
--[[gcc-8.3/gcc/SET_TYPE_VECTOR_SUBPARTS()]]
--[[gcc-8.3/gcc/SET_TYPE_MODE()]]

   if (TYPE_STRUCTURAL_EQUALITY_P (mv_innertype) || in_lto_p)
     SET_TYPE_STRUCTURAL_EQUALITY (t);
   else if ((TYPE_CANONICAL (mv_innertype) != innertype
 	    || mode != VOIDmode)
 	   && !VECTOR_BOOLEAN_TYPE_P (t))
     TYPE_CANONICAL (t)
       = make_vector_type (TYPE_CANONICAL (mv_innertype), nunits, VOIDmode);
 
-
--[[gcc-8.3/gcc/TYPE_STRUCTURAL_EQUALITY_P()]]
--[[gcc-8.3/gcc/SET_TYPE_STRUCTURAL_EQUALITY()]]
--[[gcc-8.3/gcc/TYPE_CANONICAL()]]
--[[gcc-8.3/gcc/VECTOR_BOOLEAN_TYPE_P()]]
--[[gcc-8.3/gcc/make_vector_type()]]

   layout_type (t);
 
   hashval_t hash = type_hash_canon_hash (t);
   t = type_hash_canon (hash, t);
 
-
--[[gcc-8.3/gcc/layout_type()]]
--[[gcc-8.3/gcc/hashval_t]]
--[[gcc-8.3/gcc/type_hash_canon_hash()]]
--[[gcc-8.3/gcc/type_hash_canon()]]

   /* We have built a main variant, based on the main variant of the
      inner type. Use it to build the variant we return.  */
   if ((TYPE_ATTRIBUTES (innertype) || TYPE_QUALS (innertype))
       && TREE_TYPE (t) != innertype)
     return build_type_attribute_qual_variant (t,
 					      TYPE_ATTRIBUTES (innertype),
 					      TYPE_QUALS (innertype));
 
   return t;
 }
-
--[[gcc-8.3/gcc/TYPE_ATTRIBUTES()]]
--[[gcc-8.3/gcc/TYPE_QUALS()]]
--[[gcc-8.3/gcc/TREE_TYPE()]]
--[[gcc-8.3/gcc/build_type_attribute_qual_variant()]]


*コメント [#a3214552]


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS