annotate gcc/d/ChangeLog-2013 @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
145
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1 2013-12-27 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
2
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
3 * d-codegen.cc (build_two_field_type): Declare builtin types as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
4 toplevel declarations.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
5 * d-ctype.cc (EnumDeclaration::toDebug): Build type decl in debug code.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
6 * d-lang.cc (nametype): Rename to d_nametype.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
7
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
8 2013-12-23 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
9
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
10 * d-decls.cc (EnumDeclaration::toDebug): Don't send array types to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
11 rest_of_type_compilation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
12
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
13 2013-12-16 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
14
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
15 * d-spec.cc (lang_specific_driver): Require linking in library for all
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
16 files except D interface files.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
17 * d-lang.cc (d_write_global_declarations): Call d_finish_compilation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
18 * d-objfile.cc (mark_needed): Mark static.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
19 (d_finish_symbol): Don't call mark_needed.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
20 (d_finish_function): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
21 (d_finish_compilation): New function to wrapup all global
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
22 declarations, mark templates/comdats as needed if required, and start
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
23 the final compilation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
24
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
25 2013-12-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
26
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
27 * d-ctype.cc (TypeVector::toCtype): Treat void vectors as ubyte.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
28 * d-objfile.cc (VarDeclaration::toObjFile): Gag all errors compiling
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
29 manifest constants.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
30 * d-todt.cc (TypeVector::toDt): New function to generate correct static
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
31 data for vector initialisers.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
32
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
33 2013-12-05 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
34
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
35 * d-lang.cc (d_init_options_struct): Don't define strict aliasing.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
36 (d_get_alias_set): New function to return language-specific alias set.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
37 * d-convert.cc (d_convert_basic): Always zero extend pointer to integer
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
38 conversions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
39
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
40 2013-12-04 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
41
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
42 * d-codegen.cc (maybe_set_builtin_frontend): Assert that all runtime
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
43 library functions have been set-up correctly.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
44 (libcall_ids): Remove unhandled library functions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
45 (get_libcall): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
46 * d-codegen.h (LibCall): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
47 * d-objfile.cc (output_symbol_p): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
48
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
49 2013-12-03 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
50
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
51 * d-lang.cc (d_init_options): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
52 (d_handle_option): Set frontend allInst option if -femit-templates.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
53 * d-objfile.cc (output_template_p): Want to emit all instantiated
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
54 templates if -femit-templates or -fdebug was passed to the compiler.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
55 * d-objfile.h (TemplateEmission): Define TEallinst.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
56 * d-todt.cc (StructDeclaration::toDt): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
57 * d-spec.cc (THREAD_LIBRARY): Define default thread library to link if
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
58 one is not already specified in the configuration process.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
59 (TIME_LIBRARY): Define default real time library to link if one is not
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
60 already specified in the configuration process.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
61 (LIBSTDCXX): Define C++ library to link if compiling C++ and D sources.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
62 (lang_specific_driver): Update implementation to use new macros.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
63
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
64 2013-12-02 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
65
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
66 * d-elem.cc (CatAssignExp::toElem): Don't call postblit after element
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
67 append to array.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
68 (NewExp::toElem): Handle calling 'new' on opaque types.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
69 (ArrayLiteralExp::toElem): Ensure array literal elements have no side
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
70 effects by making temporaries as necessary.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
71 * d-todt.cc (StructLiteralExp::toDt): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
72 * d-codegen.cc (build_frame_type): Check for scoped variables if
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
73 building a closure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
74 * d-objfile.cc (d_finish_symbol): Relax toDt checking rule.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
75
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
76 2013-12-01 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
77
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
78 * d-asmstmt.cc (ExtAsmStatement::ExtAsmStatement): Remove labels
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
79 member from class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
80 * d-codegen.cc (d_gcc_force_templates): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
81 (convert_expr): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
82 (convert_for_assignment): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
83 (maybe_set_builtin_frontend): Update for changes to libdruntime
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
84 core.bitops signatures.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
85 * d-ctype.cc (TypeFunction::toCtype): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
86 * d-decls.cc (Dsymbol::toSymbolX): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
87 (VarDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
88 (FuncDeclaration::toSymbol): Don't defer nested functions here.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
89 * d-elem.cc (PowAssignExp::toElem): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
90 (DeleteExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
91 (AssertExp::toElem): Don't call invariant on an extern C++ class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
92 * d-glue.cc (Global::init): Initialise new stdmsg member.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
93 * d-lang.cc (d_handle_option): Handle -fdeps switch. Remove TEprivate
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
94 for -femit-templates switch.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
95 (genCmain): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
96 (d_parse_file): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
97 * d-longdouble.cc (longdouble::dump): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
98 * d-objfile.cc (ClassDeclaration::toObjFile): Update for frontend
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
99 changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
100 (InterfaceDeclaration::toObjFile): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
101 (EnumDeclaration::toObjFile): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
102 (Symbol::Symbol): Remove outputSymbol member.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
103 (output_symbol_p): Mark static.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
104 (output_declaration_p): Determine symbol codegen status from
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
105 semanticRun.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
106 (output_template_p): New function to determine whether an instantiated
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
107 template is to be written to object file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
108 (FuncDeclaration::toObjFile): Use semanticRun to update codegen status
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
109 of function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
110 (FuncDeclaration::buildClosure): Error if putting a scoped variable in
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
111 a closure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
112 (Module::genobjfile): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
113 (d_comdat_linkage): Don't determine linkage from TE setting. Mark all
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
114 comdat symbols as DECL_COMDAT.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
115 (setup_symbol_storage): Use output_template_p to determine whether the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
116 symbol is being written to object file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
117 (mark_needed): New function to mark decls that must be emitted.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
118 (d_finish_symbol): Mark finished symbols as needed.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
119 (d_finish_function): Mark finished functions as needed.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
120 (build_simple_function): Set semanticRun for glue changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
121 * d-objfile.h (OutputStage): Remove enum.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
122 * d-todt.cc (build_vptr_monitor): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
123 (StructInitializer::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
124 (StructDeclaration::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
125 (TypeInfoEnumDeclaration::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
126 (TypeInfoStructDeclaration::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
127 (Type::getTypeInfo): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
128
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
129 2013-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
130
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
131 * d-lang.cc (genCmain): Implement code generation of __entrypoint
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
132 module to provide the target C main function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
133 (deps_write): Ignore the module __entrypoint when writing make deps.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
134 (d_parse_file): Handle writing __entrypoint module to object file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
135 * d-objfile.cc (d_finish_symbol): Remove special handling of _tlsstart
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
136 symbol, but ensure _tlsend gets written to the thread common section.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
137 (d_finish_function): Remove call to build_tlssections.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
138 (build_tlssections): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
139
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
140 2013-11-29 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
141
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
142 * d-decls.cc (ClassDeclaration::toVtblSymbol): Use TypeSArray::makeType
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
143 to generate frontend static array type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
144 * d-glue.cc (Dsymbol::ungagSpeculative): Define.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
145 * d-lang.cc (genCmain): Define as empty.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
146 (d_parse_file): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
147 * d-objfile.cc (StructDeclaration::toObjFile): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
148 * d-typinf.cc (TypeBasic::builtinTypeInfo): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
149 * d-longdouble.cc (longdouble::isIdenticalTo): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
150 * d-port.cc (Port::fequal): Define.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
151
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
152 2013-11-28 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
153
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
154 * d-builtins.cc (gcc_type_to_d_type): Use TypeSArray::makeType to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
155 generate frontend static array types.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
156 * d-codegen.cc (build_attributes): Use optimize as don't want the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
157 ctfeInterpret of TypeExp expressions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
158 (get_object_method): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
159 (get_libcall): Update to use Type::dtypeinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
160 * d-elem.cc (IndexExp::toElem): Don't generate bounds checking codegen
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
161 if frontend explictly requests it.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
162 (ArrayLiteralExp::toElem): Use TypeSArray::makeType to generate
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
163 frontend static array type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
164 (StructLiteralExp::toElem): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
165 * d-glue.cc (Global::increaseErrorCount): Define.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
166 * d-objfile.cc (Module::genmoduleinfo): Remove moduleinfo 'New'
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
167 implementation for libdruntime changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
168 * d-todt.cc (StructLiteralExp::toDt): Literal initialisers override
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
169 default initialisers.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
170 (TypeInfoDeclaration::toDt): Update to use Type::dtypeinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
171 (TypeInfoStructDeclaration::toDt): Update for frontend changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
172 * d-typinf.c (Type::getInternalTypeInfo): Update to use
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
173 Type::dtypeinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
174
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
175 2013-11-25 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
176
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
177 * d-asmstmt.cc (ExtAsmStatement::comeFromImpl): Define for frontend
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
178 implementation changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
179 * d-codegen.cc (get_libcall): Update to use Type::typeinfoclass.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
180 * d-codegen.cc (WrappedExp): Define as class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
181 * d-convert.cc (d_convert_basic): Fix format warnings.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
182 * d-decls.cc (ModuleInfoDeclaration::toSymbol): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
183 (FuncDeclaration::toSymbol): Use mangleExact to get decl mangle.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
184 * d-elem.cc (ClassReferenceExp::toElem): Return reference to class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
185 * d-glue.cc (verror): Fix format warnings.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
186 (verrorSupplemental): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
187 (vwarning): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
188 (vdeprecation): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
189 (escapePath): Define for frontend implementation changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
190 * d-irstate.cc (IRState::getLoopForLabel): Implement breaking on named
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
191 scope labels in for/while loops.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
192 * d-lang.cc (d_handle_option): Add handler for new -fdeps and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
193 -fmake-deps options.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
194 (d_parse_file): Handle new -fdeps and fmake-deps options.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
195 * d-objfile.cc (Dsymbol::toObjFile): Update to use RootObject.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
196 (Type::typeinfoclass): Update to use Type::typeinfoclass.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
197 (InterfaceDeclaration::toObjFile): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
198 * d-objfile.h (Symbol): Remove inheritance from Object.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
199 * d-todt.cc (TypeInfoStructDeclaration::toDt): Update to use
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
200 Type::immutableOf.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
201
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
202 2013-11-24 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
203
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
204 * d-builtins.c (gcc_type_to_d_type): Use TREE_INT_CST_LOW macro instead
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
205 of tree_low_cst.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
206 (eval_builtin): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
207 (gcc_cst_to_d_expr): Use tree_cst_hwi.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
208 * d-codegen.cc (tree_to_hwi): Remove call to deleted host_integerp.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
209 (maybe_expand_builtin): Use TREE_INT_CST_LOW macro.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
210 * d-lang.cc (d_parse_file): Update debug_hooks call for middle-end
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
211 changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
212 * d-system.h: Update includes for middle-end changes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
213
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
214 2013-11-17 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
215
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
216 * d-objfile.cc (finish_thunk): Update for conversion of symtab types to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
217 a true class hierarchy.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
218
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
219 * d-ctype.cc (TypeClass::toCtype): Fix ABI to emit correct vtable and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
220 monitor field names.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
221
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
222 * d-ctype.cc (TypeClass:toCtype): Set TYPE_LANG_SPECIFIC on record as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
223 well as reference type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
224 * d-lang.cc (d_classify_record): New langhook to return appropriate
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
225 class/interface/struct type to the debugger.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
226
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
227 2013-10-27 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
228
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
229 * d-elem.cc (ArrayLiteralExp::toElem): Build empty constructor for zero
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
230 sized arrays.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
231
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
232 2013-10-23 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
233
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
234 * d-elem.cc (AssignExp::toElem): Optimise assigning array literal to a
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
235 static array.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
236 (ArrayLiteralExp::toElem): Do not allocate static or const array
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
237 literals on the heap using the GC.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
238
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
239 2013-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
240
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
241 * d-builtins.c (DEF_FUNCTION_TYPE_8): Define.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
242
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
243 2013-10-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
244
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
245 * d-builtins.c (gcc_cst_to_d_expr): Add support for VECTOR_CST to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
246 Expression conversion.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
247 (d_gcc_paint_type): Add support for painting to/from array literals.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
248
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
249 2013-10-01 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
250
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
251 * d-objfile.cc (cvtLocToloc_t): Rename to get_linemap.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
252 * d-glue.cc: New source to provide interface for defined globals and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
253 error handling called from the front-end.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
254
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
255 2013-09-16 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
256
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
257 * d-codegen.cc (IRState::call): Rename to d_build_call.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
258 (IRState::emitLocalVar): Rename to build_local_var.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
259 (IRState::buildAssignOp): Move to BinExp::toElemBin.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
260 (IRState::IRState): Remove IRState class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
261 * d-irstate.cc (IRBase::IRBase): Rename to IRState, remove inheritance
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
262 from Object class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
263 * d-decls.cc (VarDeclaration::toSymbol): Remove redundant CONST_DECL
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
264 code as VarDeclaration::toObjFile does not emit manifest constants.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
265 * d-ctype.cc (TypeEnum::toCtype): Generate CONST_DECLs for enumeration
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
266 members for correct debugging.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
267 * d-objfile.cc (build_type_decl): Use fully qualified type name in
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
268 debugging code.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
269 (VarDeclaration::toObjFile): Emit manifest constant values in debug
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
270 code generation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
271
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
272 2013-09-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
273
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
274 * d-elem.cc (SliceExp::toElem): Don't build D array for slices that
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
275 return a static array.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
276
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
277 2013-09-03 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
278
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
279 * d-codegen.cc (IRState::buildOp): Rename to build_binary_op.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
280
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
281 2013-09-01 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
282
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
283 * d-decls.cc (binfo_for): Rename to build_class_binfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
284 (intfc_binfo_for): Rename to build_interface_binfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
285 (ClassDeclaration::toDebug): Move binfo generation into toCtype.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
286 * d-lang.cc (pushlevel): Rename to push_binding_level.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
287 (poplevel): Rename to pop_binding_level.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
288 (global_bindings_p): Rename to d_global_bindings_p, add langhook.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
289 (pushdecl): Rename to d_pushdecl, add langhook.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
290 (getdecls): Rename to d_getdecls, add langhook.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
291 (set_block): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
292 (insert_block): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
293 * d-irstate.cc (IRBase::startBindings): Inline set_block here.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
294 (IRBase::endBindings): Inline insert_block here.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
295
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
296 2013-08-29 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
297
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
298 * d-spec.c (lang_specific_spec_functions): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
299
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
300 2013-08-28 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
301
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
302 * d-codegen.cc (IRState::doArraySet): Rename to IRBase::doArraySet.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
303 (IRState::arraySetExpr): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
304 (IRState::expandDecl): Rename to expand_decl.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
305 (IRState::typeinfoReference): Rename to build_typeinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
306 (IRState::buildChain): Merge into FuncDeclaration::buildClosure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
307 (IRState::getVThis): Rename to build_vthis.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
308 (IRState::maybeExpandSpecialCall): Rename to maybe_expand_builtin.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
309 (IRState::toDArray): Rename to d_array_convert.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
310
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
311 2013-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
312
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
313 * d-codegen.cc (convert_expr): Check that the class type the codegen is
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
314 casting from is a base class of the class type the codegen is casting
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
315 to, not the other way round.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
316
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
317 2013-08-14 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
318
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
319 * d-elem.cc (ArrayLiteralExp::toElem): Return null for zero length
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
320 array literals.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
321
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
322 2013-08-07 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
323
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
324 * d-objfile.cc (finish_thunk): Don't emit thunks to external symbols as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
325 weakref declarations.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
326 * d-codegen.cc (IRState::maybeExpandSpecialCall): Remove intrinsic yl2x
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
327 and yl2xp1 builtins.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
328 (maybe_set_builtin_frontend): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
329
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
330 2013-07-09 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
331
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
332 * d-builtins.c (d_gcc_magic_builtins_module): Set builtins solely
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
333 provided by the compiler as @safe, pure and nothrow.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
334 * d-codegen.cc (IRState::getVThis): Don't set outer 'this' of structs
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
335 to be parent function chain if no frame has been created.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
336
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
337 2013-07-08 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
338
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
339 * d-elem.cc (Expression::toElemDtor): Wrap temp variables destructor
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
340 calls in a try/finally expression.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
341
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
342 2013-07-05 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
343
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
344 * patch-versym-os-4.8.x: Set versions on powerpc and alpha.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
345 Remove SysV4 support and therefore fix macro redefinition warnings.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
346 * patch-versym-os-4.9.x: Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
347
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
348 2013-07-03 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
349
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
350 * d-longdouble.cc (longdouble::set): Intepret set values at higher
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
351 precision for min/max properties.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
352 * d-codegen.cc (maybe_set_builtin_frontend): Add yl2x and yl2xp1
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
353 math intrinsics.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
354 (IRState::maybeExpandSpecialCall): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
355
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
356 2013-07-02 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
357
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
358 * d-objfile.cc (Module::genobjfile): Don't free current_module_info.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
359 * d-codegen.cc (IRState::buildAssignOp): Don't create a SAVE_EXPR
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
360 around comma expressions used as lvalues.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
361 * d-todt.cc (TypeSArray::toDtElem): Get underlying vector basetype when
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
362 layouting out data in a static array.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
363
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
364 2013-06-29 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
365
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
366 * complex_t.h: Move into dfrontend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
367 * d-builtins.c (gcc_cst_to_d_expr): Explicitly create longdouble.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
368 * d-longdouble.cc (longdouble::parse): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
369 (longdouble::longdouble): Remove constructors from longdouble.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
370 Replaced with operator= template and longdouble::set.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
371 (longdouble::rv): Update for new class layout.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
372 (longdouble::from_shwi): New function to create a longdouble value
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
373 from a HOST_WIDE_INT.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
374 (longdouble::from_uhwi): Likewise, but from an unsigned HOST_WIDE_INT.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
375 (longdouble::to_shwi): New function to return a HOST_WIDE_INT value
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
376 from a longdouble.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
377 (longdouble::to_uhwi): Likewise, but from an unsigedn HOST_WIDE_INT.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
378 (longdouble::set): New function to explicitly set longdouble value.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
379 (longdouble::toInt): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
380 (longdouble::isZero): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
381 (longdouble::isNegative): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
382 * d-port.cc (Port::nan): Rename to Port::ldbl_nan.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
383 (Port::infinity): Rename to Port::ldbl_infinity.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
384 (Port::ldbl_max): New static field.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
385 (Port::init): Set ldbl_max to be maximimum value for long double type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
386 (Port::strtof): New function to convert string to longdouble.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
387 (Port::strtod): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
388 (Port::strtold): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
389
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
390 2013-06-24 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
391
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
392 * d-objfile.cc (make_alias_for_thunk): Do not set
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
393 TREE_SYMBOL_REFERENCED.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
394
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
395 2013-06-17 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
396
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
397 * d-codegen.cc (build_struct_memcmp): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
398 * d-elem.cc (IdentityExp::toElem): Use build_struct_memcmp for field
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
399 comparisons of small structs.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
400
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
401 2013-06-13 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
402
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
403 * d-codegen.cc (make_temp): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
404 * d-decls.cc (StructLiteralExp::toSymbol): Implement correctly to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
405 generate an anonymous symbol to reference to in the codegen.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
406 (ClassReferenceExp::toSymbol): Likewise, but also use an anonymous
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
407 type as size is not determined until the data has been layed out.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
408 * d-elem.cc (EqualExp::toElem): Optimise comparisons of arrays of basic
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
409 types, also ensure left-to-right evaluation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
410 (SliceExp::toElem): Handle returing slice as a static array type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
411 (AddrExp::toElem): Handle taking the address of StructLiteralExp and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
412 ClassReferenceExp symbols.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
413 (FuncExp::toElem): Relax type checking to allow returning function
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
414 addresses as generic pointer types.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
415 (ArrayLiteralExp::toElem): Implicitly convert static arrays of void to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
416 static arrays of ubyte.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
417 (StructLiteralExp::toElem): Remove code generation of postblit calls,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
418 now taken care of in the front end.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
419 * d-objfile.cc (Module::genmoduleinfo): Emit module name as a null
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
420 terminated static array.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
421 * d-ctype.cc (TypeAArray::toCtype): Pass AA types around like pointers.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
422
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
423 2013-06-11 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
424
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
425 * dfrontend: Update to D front-end version 2.063.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
426
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
427 * d-builtins.c (gcc_type_to_d_type): Use Loc for unknown locations.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
428 (d_gcc_magic_builtins_module): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
429 (gcc_cst_to_d_expr): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
430 * d-codegen.cc (get_libcall): Use FuncDeclaration::genCfunc to build
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
431 D runtime library functions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
432 * d-decl.cc (SymbolDeclaration::SymbolDeclaration): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
433 (StructLiteralExp::toSymbol): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
434 (ClassReferenceExp::toSymbol): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
435 * d-elem.cc (AssertExp::toElem): Call struct/class invariants only if
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
436 compiler is generating invariant code.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
437 (TupleExp::toElem): Update for new front-end.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
438 (ClassReferenceExp::toElem): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
439 * d-lang.cc (d_init_options): Set compiler.vendor front-end parameter.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
440 (d_init): Call Expression::init.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
441 * d-objfile.cc (InterfaceDeclaration::toObjFile): Correctly set the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
442 xgetRTInfo field in the record layout.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
443 * d-todt.cc (CastExp::toDt): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
444 (AddrExp::toDt): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
445 (ClassReferenceExp::toDt): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
446 (ClassReferenceExp::toDtI): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
447 (ClassReferenceExp::toInstanceDt): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
448 (ClassReferenceExp::toDt2): New function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
449
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
450 2013-06-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
451
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
452 * d-objfile.cc (FuncDeclaration::toObjFile): Set 'this' parameter as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
453 implicitly read-only.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
454 * d-codegen.cc (declaration_type): Set 'this' declaration type as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
455 implicitly const.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
456 (build_frame_type): Set frame or closure type as implicitly const.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
457
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
458 2013-06-09 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
459
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
460 * d-builtins.c (d_init_builtins): Make d_unknown_type_node a
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
461 RECORD_TYPE.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
462 * d-lang.cc (d_build_eh_type_type): Cast the returned typeinfo decl to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
463 void pointer type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
464
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
465 2013-06-07 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
466
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
467 * d-codegen.cc (IRState::var): Rename to get_decl_tree.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
468 (IRState::convertForArgument): Rename to convert_for_argument.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
469 (IRState::floatMod): Rename to build_float_modulus.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
470 (IRState::findThis): Rename to find_this_tree.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
471 (IRState::emitLocalVar): Update signature.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
472 (IRState::arrayElemRef): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
473 * d-elem.cc (IndexExp::toElem): Move implementation of
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
474 IRState::arrayElemRef here.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
475
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
476 2013-06-04 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
477
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
478 * d-codegen.cc (cmodule): Rename to current_module_decl.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
479 (object_file): Remove variable.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
480 * d-objfile.cc (ObjectFile::moduleInfo): Rename to current_module_info.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
481 (ObjectFile::modules): Rename to output_modules.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
482 (ObjectFile::staticCtorList): Rename to static_ctor_list.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
483 (ObjectFile::staticDtorList): Rename to static_dtor_list.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
484 (ObjectFile::emitTemplates): Rename to flag_emit_templates.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
485 (ObjectFile::beginModule): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
486 (ObjectFile::endModule): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
487 (ObjectFile::finish): Rename to d_finish_module.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
488 (ObjectFile::doLineNote): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
489 (ObjectFile::setLoc): Rename to set_input_location.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
490 (ObjectFile::setDeclLoc): Rename to set_decl_location.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
491 (ObjectFile::setCfunEndLoc): Rename to set_function_end_locus.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
492 (ObjectFile::giveDeclUniqueName): Rename to get_unique_name.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
493 (ObjectFile::setupSymbolStorage): Rename to setup_symbol_storage.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
494 (ObjectFile::setupStaticStorage): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
495 (ObjectFile::makeDeclOneOnly): Rename to d_comdat_linkage.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
496 (ObjectFile::outputStaticSymbol): Rename to d_finish_symbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
497 (ObjectFile::outputFunction): Rename to d_finish_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
498 (ObjectFile::addAggMethod): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
499 (ObjectFile::initTypeDecl): Rename to build_type_decl.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
500 (ObjectFile::declareType): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
501 (ObjectFile::shouldEmit): Rename to output_declaration_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
502 (ObjectFile::shouldEmit): Rename variant to output_symbol_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
503 (ObjectFile::doThunk): Rename to use_thunk.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
504 (ObjectFile::stripVarDecl): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
505 (ObjectFile::doSimpleFunction): Rename to build_simple_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
506 (ObjectFile::doFunctionToCallFunctions): Rename to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
507 build_call_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
508 (ObjectFile::doCtorFunction): Rename to build_ctor_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
509 (ObjectFile::doDtorFunction): Rename to build_dtor_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
510 (ObjectFile::doUnittestFunction): Rename to build_unittest_function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
511 (ObjectFile::hasModule): Rename to output_module_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
512 (ObjectFile::outputThunk): Rename to finish_thunk.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
513 (write_deferred_thunks): New function to emit deferred thunks.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
514
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
515 2013-06-03 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
516
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
517 * d-decls.cc (VarDeclaration::toSymbol): Don't set default tls model.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
518 * d-objfile.cc (ObjectFile::setupSymbolStorage): Set default tls
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
519 model for var decls before determining whether symbol is public.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
520 (build_tlssections): Likewise for TLS symbols.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
521
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
522 2013-06-01 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
523
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
524 * d-codegen.cc (maybe_set_builtin_frontend): Check parameter and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
525 return types of intrinsics.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
526
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
527 2013-06-01 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
528
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
529 * d-codegen.cc (IRState::var): Handle variables used for NRVO.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
530 * d-ir.cc (ReturnStatement::toIR): Return result decl directly if NRVO.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
531 * d-objfile.cc (Symbol::SnamedResult): New member to hold the named
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
532 RESULT_DECL of the function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
533 (FuncDeclaration::toObjFile): Set-up function for NRVO.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
534 (build_tlssections): Align _tlsstart and _tlsend symbols to target
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
535 address size.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
536 * d-ctype.cc (TypeFunction::toSymbol): Mark functions returning non-POD
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
537 structs as TREE_ADDRESSABLE to force return in memory.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
538 * d-decls.cc (FuncDeclaration::toSymbol): Propagate TREE_ADDRESSABLE
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
539 from the original function type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
540
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
541 2013-05-29 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
542
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
543 * d-target.cc: New source file to handle Target structure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
544
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
545 * d-builtins.c (d_bi_init): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
546 (d_gcc_type_align): Move to Target::alignsize.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
547 (d_gcc_field_align): Move to Target::fieldalign.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
548 (d_init_builtins): Build va_list type for D frontend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
549 * d-lang.cc (d_init): Use isLP64 to determine LP64 targets.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
550 (d_add_builtin_version): Set is64bit if target is X86_64.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
551 * d-codegen.cc (convert_for_assignment): Use memset to implement front
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
552 end code (struct = 0) here, rather than build an empty constructor.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
553 * d-elem.cc (AssignExp::toElem): Remove handling of (struct = 0) and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
554 call convert_for_assignment.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
555
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
556 2013-05-28 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
557
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
558 * d-gcc-complex_t.h: Rename to complex_t.h.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
559 * d-gcc-real.cc: Rename to d-longdouble.cc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
560 * d-gcc-real.h: Rename to longdouble.h
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
561 * d-port.cc: New source file to handle Port structure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
562 * gdc_alloca.h: Remove source.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
563
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
564 * d-longdouble.cc (real_t): Rename to longdouble.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
565 (longdouble::getnan): Move to Port::nan.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
566 (longdouble::getsnan): Move to Port::snan.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
567 (longdouble::getinfinity): Move to Port::infinity.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
568 (longdouble::isInf): Move to Port::isInfinite.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
569 (longdouble::isNan): Move to Port::isNan.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
570 (longdouble::isSignallingNan): Move to Port::isSignallingNan.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
571 * d-builtins.c (gcc_d_backend_init): Rename to d_backend_init.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
572 (gcc_d_backend_term): Rename to d_backend_term.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
573 (gcc_type_to_d_type): Don't map 128bit integers to D front end.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
574
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
575 * d-elem.cc (AssignExp::toElem): Remove handling of fillHoles, use
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
576 memset to implement (struct = 0).
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
577 (StructLiteralExp::toElem): Handle fillHoles here, creating a
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
578 temporary var that is zero init'd with memset and returned.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
579
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
580 2013-05-27 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
581
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
582 * d-codegen.cc (IRState::localVar): Rename to build_local_var.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
583 (IRState::exprVar): Rename to create_temporary_var.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
584 (IRState::maybeExprvar): Rename to maybe_temporary_var.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
585 (IRState::pointerIntSum): Rename to build_array_index.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
586 * d-lang.cc (d_handle_target_attribute): New function to handle D
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
587 target attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
588
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
589 2013-05-26 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
590
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
591 * d-incpath.cc (prefixed_path): Add cpp_GCC_INCLUDE_DIR back in as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
592 second method for relocation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
593 * d-elem.cc (IndexExp::toElem): Fix call to _aaGetX as from
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
594 IRState::toElemLvalue.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
595 * d-codegen.cc (IRState::toElemLvalue): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
596 (IRState::convertForAssignment): Rename to convert_for_assignment.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
597 (IRState::convertForCondition): Rename to convert_for_condition.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
598 (IRState::checkedIndex): Rename to d_checked_index.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
599 (IRState::boundsCond): Rename to d_bounds_condition.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
600 (IRState::arrayBoundsCheck): Rename to array_bounds_check.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
601 (IRState::assertCall): Rename to d_assert_call.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
602 (IRState::doLineNote): Move to irstate.h.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
603 * d-irstate.cc (IRBase::getLocalContext): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
604 * d-decls.cc (VarDeclaration::toSymbol): Build decl lang specific for
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
605 decl to point back to D front end type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
606 (FuncDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
607
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
608 2013-05-23 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
609
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
610 * d-codegen.cc (AggLayout::finish): Unset TYPE_SIZE before
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
611 re-calculating.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
612 * d-ctype.cc (TypeStruct::toCtype): Don't call decl_attribute on the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
613 type twice.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
614
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
615 2013-05-21 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
616
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
617 * d-lang.cc (d_gcc_dump_source): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
618 (d_post_options): Set flag_excess_precision_cmd as standard.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
619 * d-gcc-real.cc (real_t::convert): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
620 (real_t::floatCompare): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
621 (real_t::operator): Always perform floating point compilation at the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
622 precision of the target real mode.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
623 * d-todt.cc (dt_last): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
624 (dtlist_to_tree): Rename to dtvector_to_tree.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
625 (dt_cons): Replace TREE_CHAIN implementation for use of CONSTRUCTOR.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
626 (dt_chainon): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
627 (dt_container): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
628 (dt_container2): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
629 (StructInitializer::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
630 (StructLiteralExp::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
631
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
632 2013-05-17 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
633
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
634 * d-codegen.cc (IRState::convertTo): Replace with d_convert and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
635 convert_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
636 (IRState::declContext): Replace with d_decl_context.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
637 (IRState::functionNeedsChain): Replace with needs_static_chain.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
638 (IRState::label): Replace with d_build_label.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
639 (IRState::emitTemplates): Move to ObjectFile.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
640 (functionDegenerateClosure): Replace with is_degenerate_closure.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
641 (get_object_method): Assert that function is a method.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
642 (IRState::startCond): Move to IRBase.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
643 (IRState::startElse): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
644 (IRState::endCond): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
645 (IRState::startLoop): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
646 (IRState::continueHere): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
647 (IRState::setContinueLabel): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
648 (IRState::exitIfFalse): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
649 (IRState::endLoop): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
650 (IRState::startCase): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
651 (IRState::doCase): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
652 (IRState::endCase): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
653 (IRState::continueLoop): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
654 (IRState::exitLoop): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
655 (IRState::startTry): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
656 (IRState::startCatches): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
657 (IRState::startCatch): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
658 (IRState::endCatch): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
659 (IRState::endCatches): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
660 (IRState::startFinally): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
661 (IRState::endFinally): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
662 (IRState::doReturn): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
663 (IRState::doJump): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
664 (IRState::pushLabel): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
665 (IRState::checkSwitchCase): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
666 (IRState::checkGoto): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
667 (IRState::checkPreviousGoto): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
668
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
669 * d-elem.cc (CatAssignExp::toElem): Call postblit on appending array of
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
670 structs if required.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
671
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
672 2013-05-16 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
673
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
674 * d-incpath.cc (prefixed_path): use cpp_PREFIX instead of
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
675 cpp_GCC_INCLUDE_DIR for relocation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
676
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
677 2013-05-16 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
678
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
679 * d-codegen.cc (IRState::convertForAssignment): Remove use of
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
680 CtorEltMaker wrapper for vec<constructor_elt, va_gc>.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
681 (d_array_value): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
682 (build_delegate_cst): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
683 (extract_from_method_call): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
684 * d-elem.cc (NewExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
685 (ArrayLiteralExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
686 (AssocArrayLiteralExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
687 (StructLiteralExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
688 (NullExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
689 (VectorExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
690 * d-objfile.cc (build_moduleinfo): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
691 * d-todt.cc (dt_container): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
692 (dt_container2): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
693
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
694 * d-asmstmt.cc (ExtAsmStatement::toIR): Remove use of ListMaker
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
695 wrapper for tree chaining.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
696 * d-builtins.c (d_bi_builtin_func): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
697 (d_bi_builtin_type): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
698 (d_gcc_magic_builtins_module): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
699 (d_gcc_magic_libbuiltins_module): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
700 * d-codegen.cc (build_attributes): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
701 (IRState::call): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
702 (IRState::buildFrameForFunction): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
703 (AggLayout::doFields): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
704 (AggLayout::addField): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
705 * d-ctype.cc (TypeEnum::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
706 (TypeFunction::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
707 * d-todt.cc (dt_container2): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
708
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
709 * d-codegen.cc (IRState::getFrameInfo): Replace with get_frameinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
710 (IRState::buildFrameForFunction): Replace with build_frame_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
711 (IRState::isClassNestedInFunction): Replace with d_nested_class.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
712 (IRState::isStructNestedInFunction): Replace with d_nested_struct.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
713 (IRState::getFrameForFunction): Fold into IRState::getFrameForSymbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
714 (IRState::getFrameForNestedClass): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
715 (IRState::getFrameForNestedStruct): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
716
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
717 2013-05-15 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
718
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
719 * d-codegen.cc (IRState::buildFrameForFunction): Also copy the
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
720 parameters of functions with 'in' contracts to a local frame decl.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
721 * d-lang.cc (d_handle_flatten_attribute): New function to handle D
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
722 flatten attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
723
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
724 2013-05-14 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
725
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
726 * d-codegen.cc (IRState::chainLink): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
727 (IRState::chainFunc): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
728 (IRState::sthis): New member which holds the chain of function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
729 (IRState::buildChain): Update to use new static chain decl.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
730 (IRState::getFrameInfo): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
731 * d-objfile.cc (FuncDeclaration::buildClosure): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
732 (FuncDeclaration::toObjFile): Default the function static chain decl
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
733 to null unless vthis is given for the function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
734
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
735 2013-05-13 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
736
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
737 * d-lang.cc (d_handle_noinline_attribute): New function to handle D
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
738 noinline attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
739 (d_handle_forceinline_attribute): New function to handle D forceinline
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
740 attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
741 * d-elem.cc (StructLiteralExp::toElem): Return the struct initialiser
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
742 symbol directly if the tree has already been built.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
743 * d-decls.cc (Dsymbol::toSymbolX): Constify the mangling name to use.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
744
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
745 2013-05-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
746
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
747 * d-typinf.cc: New file containing type info routines originally in
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
748 the D Front End.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
749
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
750 * d-todt.cc (dt_last): New helper function to retrieve last node in a
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
751 dt_t tree list.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
752 (dt_cons): New helper function to append nodes to the end of a list.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
753 (dt_chainon): New helper function to concatenate two lists together.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
754 (dt_container): New helper function to build a ctor from a list.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
755 (build_vptr_monitor): New helper function to generate the class
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
756 vtable, and put out __vptr and __monitor.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
757 symbol default values in a class declaration.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
758 (dtlist_to_tree): New helper function to convert a dt_t list into a
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
759 constructor tree.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
760 (Type::toDt): Implement routines for new dt_t format.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
761 (TypeInfoDeclaration::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
762 (Initializer::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
763 (Expression::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
764 (Declaration::toDt): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
765
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
766 * d-objfile.cc (Dsymbol::toObjFile): Update for new dt_t format.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
767 (Module::genmoduleinfo): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
768 (Symbol::Symbol): Moved from symbol.cc
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
769 (Obj::objmod): Remove abstraction layer.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
770 (Obj::moduleinfo): Renamed to build_moduleinfo.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
771 (obj_tlssections): Renamed to build_tlssections.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
772 (outdata): Renamed to d_finish_symbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
773 (check_static_sym): Moved into d_finish_symbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
774
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
775 * d-codegen.cc (d_gcc_emit_local_variable): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
776
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
777 * d-decls.cc (Dsymbol::toSymbolX): Update to not call symbol_calloc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
778 (FuncDeclaration::toThunkSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
779 (ClassDeclaration::toSymbol): Build type as d_unknown_type_node.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
780 (InterfaceDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
781 (Module::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
782 (ClassDeclaration::toVtblSymbol): Update call to toSymbolX.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
783 (AggregateDeclaration::toInitializer): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
784 (TypedefDeclaration::toInitializer): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
785 (EnumDeclaration::toInitializer): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
786
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
787 * d-ir.cc (CaseStatement::toIR): Don't call static_sym.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
788
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
789 * d-lang.cc (rtlsym): Remove symbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
790 (D_DECL_READONLY_STATIC): Remove macro.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
791 (d_unknown_type_node): New LANG_TYPE node for marking TypeInfo_Class,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
792 Interface, and ModuleInfo types that are of a variable size determined
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
793 at compile time.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
794
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
795 * d-elem.cc (StringExp::toElem): Clean up for new dt_t format.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
796
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
797 * symbol.cc: Remove file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
798
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
799 2013-05-08 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
800
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
801 * d-codegen.cc (IRState::getFrameInfo): Don't create a frame/closure
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
802 for member functions, only required for nested.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
803 * d-elem.cc (Expression::toElemDtor): Call dtors in the correct order.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
804 (DeclarationExp::toElem): Don't call dtor on static, manifest, or
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
805 extern symbols upon declaration.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
806 (AssignExp::toElem): Only call postblit on lvalues in assignment.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
807 (ArrayLiteralExp::toElem): Always generate literals on heap.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
808
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
809 2013-05-06 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
810
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
811 * d-elem.cc (StructLiteralExp::toElem): Return the default initialiser
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
812 symbol if one exists.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
813 * d-builtins.c (d_gcc_magic_libbuiltins_check): Override the function
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
814 type with the correct built-in function type as defined in backend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
815
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
816 2013-04-15 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
817
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
818 * d-elem.cc (IdentityExp::toElem): Remove special handling of class,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
819 reference and array types.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
820
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
821 2013-04-12 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
822
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
823 * d-codegen.cc (maybe_make_temp): Save call expressions so aren't
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
824 evaluated more than once.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
825 (d_has_side_effects): Remove check for exceptional class types.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
826
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
827 2013-04-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
828
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
829 * d-decls.cc (FuncDeclaration::toSymbol): Harden logic for marking
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
830 functions pure as in 'has no side effects'.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
831
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
832 2013-04-07 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
833
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
834 * d-decls.cc (FuncDeclaration::toSymbol): Push deferred functions to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
835 FuncDeclaration::deferred.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
836 * d-elem.cc (DelegateExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
837 (FuncExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
838 * d-objfile.cc (ObjectFile::shouldEmit): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
839 (FuncDeclaration::toObjFile): Process all deferred functions in
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
840 FuncDeclaration::deferred.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
841 * symbol.cc (Symbol::deferredNestedFuncs): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
842
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
843 2013-04-05 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
844
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
845 * d-elem.cc (FuncExp::toElem): Defer function literals and lambdas
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
846 until parent function has finished processing.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
847
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
848 2013-04-04 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
849
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
850 * d-codegen.cc (IRState::buildChain): Use __frame decl directly when
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
851 setting up the function frame.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
852 (maybe_set_builtin_frontend): Exit early if symbol has no parent.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
853 * d-decls.cc (FuncDeclaration::toSymbol): Defer all nested functions,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
854 not just templated instances.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
855 * d-objfile.cc (FuncDeclaration::toObjFile): Delay processed deferred
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
856 nested functions until function has finished being generated.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
857 (ObjectFile::shouldEmit): Don't emit nested functions if the parent
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
858 function hasn't finished processing.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
859
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
860 2013-04-03 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
861
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
862 * d-codegen.cc (maybe_set_builtin_frontend): Merged from
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
863 maybe_set_builtin and maybe_set_libcall.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
864 * d-decls.cc (FuncDeclaration::toSymbol): Use
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
865 maybe_set_builtin_frontend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
866
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
867 2013-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
868
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
869 * d-lang.cc (d_init_options): Default module info emission to on.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
870 (d_handle_option): New femit-moduleinfo switch.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
871 * d-objfile.cc (Module::genobjfile): Don't emit module if disabled
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
872 explicitly.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
873 * d-builtins.cc (is_intrinsic_module_p): New function to test whether
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
874 module is core.bitops.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
875 (is_math_module_p): New function to test whether module is std.math or
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
876 core.stdc.math.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
877 (is_builtin_va_arg_p): New function to test whether symbol is
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
878 specially handled va_arg template.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
879 (is_builtin_va_start_p): New function to test whether symbol is
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
880 specially handled va_start template.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
881 * d-codegen.cc (IRState::binding): Replace with bind_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
882 (IRState::mathModule): Replace with std_math_module.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
883 (IRState::mathCoreModule): Replace with core_math_module.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
884 (IRState::intrinsicModule): Replace with std_intrinsic_module.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
885 (IRState::cstdargTemplateDecl): Replace with va_arg_template.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
886 (IRState::stdargTemplateDecl): Replace with va_arg2_template.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
887 (IRState::cstdargStartTemplateDecl): Replace with va_start_template.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
888 (IRState::getLibCallDecl): Replace with get_libcall.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
889 (IRState::maybeSetLibCallDecl): Replace with maybe_set_libcall.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
890 (IRState::libCall): Replace with build_libcall.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
891 (IRState::maybeSetUpBuiltin): Replace with maybe_set_builtin.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
892 (IRState::Intrinsic): Move enum out of IRState.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
893
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
894 2013-03-30 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
895
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
896 * d-codegen.cc (IRState::darrayPtrRef): Replace with d_array_ptr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
897 (IRState::darrayLenRef): Replace with d_array_length.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
898 (IRState::darrayVal): Replace with d_array_value.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
899 (IRState::darrayString): Replace with d_array_string.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
900 (IRState::arrayLength): Replace with get_array_length.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
901 (get_object_method): Remove dependancy on irs parameter.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
902 * d-lang.cc (d_init): Use static bool std_inc to determine whether to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
903 include standard module paths.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
904 (d_post_options): Canonicalize the input filename.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
905 (d_parse_file): Correctly catch cases where input file is stdin.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
906
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
907 2013-03-27 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
908
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
909 * d-codegen.cc (IRState::getFrameInfo) Create a custom static chain for
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
910 all nested functions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
911 * d-gcc-includes.h: Rename to d-system.h
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
912
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
913 2013-03-23 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
914
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
915 * d-builtins.c (d_bi_init): Set REALPAD to be TYPE_PRECISION of
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
916 long_double_type_node.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
917 * d-codegen.cc (IRState::twoFieldType): Replace with
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
918 build_two_field_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
919 (IRState::arrayOpNotImplemented): Replace with unhandled_arrayop_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
920 (IRState::delegateMethodRef): Replace with delegate_method.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
921 (IRState::delegateObjectRef): Replace with delegate_object.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
922 (IRState::delegateVal): Replace with build_delegate_cst.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
923 (IRState::methodCallExpr): Replace with build_method_call.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
924 (IRState::extractMethodCallExpr): Replace with
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
925 extract_from_method_call.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
926 (IRState::objectInstanceMethod): Replace with get_object_method.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
927 (IRState::twoFieldCtor): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
928 (IRState::call): Assert that if calling a normal FUNCTION_TYPE,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
929 'object' is not set.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
930 * d-ctype.cc (TypeDelegate::toCtype): Build a METHOD_TYPE for the .func
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
931 field type in delegates.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
932 * d-lang.h (D_IS_METHOD_CALL_EXPR): Rename to D_METHOD_CALL_EXPR.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
933 * d-objfile.cc (FuncDeclaration::toObjFile): Remove assert for chain
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
934 function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
935
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
936 2013-03-20 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
937
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
938 * d-codegen.cc (IRState::objectInstanceMethod): Recursively check
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
939 for TOKsuper / TOKdottype. Do not ignore CastExp.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
940 * d-elem.cc (IdentityExp::toElem): Ignore padding in bitwise floating
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
941 point comparisons.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
942 * testsuite: Cleanup. Remove invalid tests, adjust tests, etc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
943
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
944 2013-03-20 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
945
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
946 * d-codegen.cc (IRState::objectInstanceMethod): Get function pointer
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
947 off function TREE_TYPE.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
948 (build_deref): Handle cases where expression to dereference is an
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
949 address expression.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
950 (modify_expr): New function overload to set return type directly.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
951 * d-elem.cc (CatAssignExp::toElem): Use new modify_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
952 (AssignExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
953 * d-decls.cc (FuncDeclaration::toSymbol): Don't build a method type for
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
954 nested functions / delegates. Just add on the hidden 'this' pointer
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
955 containing the custom static chain/closure object.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
956
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
957 * d-codegen.cc (GlobalValues): Replace with current_module,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
958 current_irs, object_file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
959 (IRState::getFuncType): Replace with get_function_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
960 (IRState::isCallByAlias): Replace with call_by_alias_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
961 (IRState::isFuncType): Replace with function_type_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
962 (IRState::doExp): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
963
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
964 * d-asmstmt.cc (ExtAsmStatement::syntaxCopy): Use arraySyntaxCopy to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
965 copy front end expressions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
966
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
967 * d-codegen.cc (AssignExp::toElem): Call _d_arrayassign / _d_arrayctor
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
968 when assigning arrays of structs.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
969
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
970 2013-03-18 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
971
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
972 * d-codegen.cc (IRState::realPart): Replace with real_part.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
973 (IRState::imagPart): Replace with imaginary_part.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
974 (IRState::integerConstant): Replace with build_integer_cst.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
975 (IRState::floatConstant): Replace with build_float_cst.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
976 (IRState::hwi2toli): Replace with cst_to_hwi.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
977 (IRState::addressOf): Replace with build_address.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
978 (IRState::markAddressable): Replace with d_mark_addressable.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
979 (IRState::markUsed): Replace with d_mark_used.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
980 (IRState::markRead): Replace with d_mark_read.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
981 (IRState::indirect): Replace with indirect_ref.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
982 (IRState::pvoidOkay): Replace with void_okay_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
983 (IRState::maybeCompound): Replace with maybe_compound_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
984 (IRState::maybeVoidCompound): Replace with maybe_vcompound_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
985 (IRState::isErrorMark): Replace with error_mark_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
986 (IRState::getTargetSizeConst): Replace with tree_to_hwi.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
987 (IRState::modify): Replace with modify_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
988 (IRState::vmodify): Replace with vmodify_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
989 (IRState::vinit): Replace with build_vinit.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
990 (IRState::nop): Replace with build_nop.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
991 (IRState::vconvert): Replace with build_vconvert.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
992 (IRState::boolOp): Replace with build_boolop.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
993 (IRState::compound): Replace with compound_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
994 (IRState::voidCompound): Replace with vcompound_expr.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
995 (IRState::component): Replace with component_ref.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
996 (IRState::errorMark): Replace with error_mark.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
997 (IRState::typesSame): Replace with d_types_same.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
998 (IRState::typesCompatible): Replace with d_types_compatible.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
999 (IRState::getDType): Replace with build_dtype.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1000 (IRState::getObjectType): Replace with build_object_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1001 (IRState::isDeclarationReferenceType): Replace with decl_reference_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1002 (IRState::trueDeclarationType): Replace with declaration_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1003 (IRState::isArgumentReferenceType): Replace with arg_reference_p.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1004 (IRState::trueArgumentType): Replace with type_passed_as.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1005 (IRState::arrayType): Replace with d_array_type.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1006 (IRState::addTypeAttribute): Replace with insert_type_attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1007 (IRState::addDeclAttribute): Replace with insert_decl_attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1008 (IRState::attributes): Replace with build_attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1009 (IRState::addTypeModifiers): Replace with insert_type_modifiers.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1010 (IRState::maybeMakeTemp): Replace with maybe_make_temp.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1011 (IRState::isFreeOfSideEffects): Replace with d_has_side_effects.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1012 (IRState::pointerOffsetOp): Replace with build_offset_op.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1013 (IRState::pointerOffset): Replace with build_offset.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1014 (IRState::buildCall): Replace with d_build_call.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1015 (IRState::exceptionObject): Replace with build_exception_object.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1016
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1017 2013-03-17 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1018
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1019 * d-asmstmt.cc (d_build_asm_stmt): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1020 (ExtAsmStatement::ExtAsmStatement): Update to match renamed members.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1021 (ExtAsmStatement::syntaxCopy): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1022 (ExtAsmStatement::semantic): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1023 (ExtAsmStatement::toCBuffer): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1024 (ExtAsmStatement::comeFrom): New.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1025 (ExtAsmStatement::blockExit): Don't error if must not throw.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1026 (naturalString): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1027 (ExtAsmStatement::toIR): Inline IRState::doAsm implementation.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1028 * d-codegen.cc (IRState::doAsm): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1029 * d-decls.cc (FuncDeclaration::toSymbol): Don't generate 'naked'
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1030 attribute.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1031 (binfo_for): Move into d-decls.cc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1032 (intfc_binfo_for): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1033 (ClassDeclaration::toDebug): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1034 (EnumDeclaration::toDebug): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1035 (TypedefDeclaration::toDebug): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1036 (StructDeclaration::toDebug): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1037 * d-objfile.cc (FuncDeclaration::toObjFile): Move into d-objfile.cc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1038 (FuncDeclaration::buildClosure): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1039 (Module::genobjfile): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1040 * d-glue.cc: Remove file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1041
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1042 2013-03-16 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1043
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1044 * d-ir.cc (SynchronizedStatement::toIR): Remove implementation as is
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1045 now handled by the frontend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1046
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1047 2013-03-15 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1048
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1049 * d-codegen.cc (IRState::maybeExpandSpecialCall): Handle ref argptr
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1050 arguments.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1051
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1052 2013-03-13 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1053
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1054 * d-builtins.c (handle_alias_attribute): New function to handle
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1055 internal 'alias' attribute.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1056 (handle_weakref_attribute): New function to handle internal 'weakref'
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1057 attribute.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1058 * d-objfile.cc (ObjectFile::outputThunk): Define thunks to external
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1059 symbols as weakref, alias
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1060
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1061 2013-03-12 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1062
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1063 * patch-versym-os-4.8.x (mingw32.h): Fix typo
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1064 * patch-versym-cpu-4.8.x (mips.h): Fix typo
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1065 Update version symbols to latest dlang specification.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1066
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1067 2013-03-10 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1068
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1069 * d-decls.cc (FuncDeclaration::toSymbol): Delay setting TREE_TYPE as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1070 function type could be hidden in a nested function not yet built.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1071 * d-codegen.cc (IRState::findThis): Don't get 'this' from outer
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1072 function if it's a closure type. This has already been handled by
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1073 IRState::getFrameForSymbol.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1074 (IRState::buildChain): Give frame decl debug name '__frame'.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1075 Always set '__chain' link field.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1076 (IRState::getFrameInfo): Don't build a frame for all nested functions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1077 Search through nested aggregates for static chain in outer functions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1078 * d-codegen.h (IRState::useParentChain): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1079 * d-glue.cc (FuncDeclaration::toObjFile): Don't call useParentChain.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1080 Don't create a local var for the chain link for a function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1081 (FuncDeclaration::buildClosure): Always set '__chain' link field.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1082
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1083 2013-03-08 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1084
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1085 * d-codegen.cc (d_gcc_force_templates): Only check for emitting
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1086 templates as private.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1087 * d-lang.cc (d_handle_option): Remove -femit-templates= option.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1088 * d-objfile.cc (ObjectFile::makeDeclOneOnly): Fix code logic so
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1089 fallback method could be reached.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1090 * d-objfile.h (TEall, TEauto): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1091
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1092 2013-03-07 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1093
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1094 * d-ir.cc (ReturnStatement::toIR): Don't call postblit on return.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1095 * d-codegen.cc (IRState::trueDeclarationType): Don't set
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1096 D_TYPE_ADDRESSABLE.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1097 (IRState::makeTemp): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1098 (IRState::maybeMakeTemp): Copy makeTemp into function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1099 * d-glue.cc (d_genericize): Remove D_TYPE_ADDRESSABLE handling.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1100 * d-lang.h (D_TYPE_ADDRESSABLE): Remove macro.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1101
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1102 2013-03-04 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1103
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1104 * d-ctype.cc (Type::toCtype): Always call gen.addTypeModifiers to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1105 make sure TYPE_MAIN_VARIANT is set. Reuse tree from unqualified
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1106 variant for that. Also cache the resulting qualified tree.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1107 (TypeTypedef::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1108 (TypeEnum::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1109 (TypeStruct::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1110 (TypeFunction::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1111 (TypeVector::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1112 (TypeSArray::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1113 (TypeDArray::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1114 (TypeAArray::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1115 (TypeDelegate::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1116 (TypeClass::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1117 * d-objfile.cc (ObjectFile::giveDeclUniqueName): Make sure DECL_NAME is set
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1118
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1119 2013-03-01 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1120
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1121 * d-decls.cc (VarDeclaration::toSymbol): Remove use of c_ident.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1122 (FuncDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1123 * d-builtins.c (handle_noreturn_attribute): Assert that this is only
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1124 used for internal purposes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1125 (handle_const_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1126 (handle_malloc_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1127 (handle_pure_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1128 (handle_nonnull_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1129 (handle_nothrow_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1130 (handle_sentinel_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1131 (handle_transaction_pure_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1132 (handle_returns_twice_attribute): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1133 * d-glue.cc (FuncDeclaration::toObjFile): Result variables have no
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1134 default initialiser.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1135 * d-codegen.cc (IRState::emitLocalVar): Add in assert that the local
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1136 variable has no initialiser if called with no_init = true.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1137 (IRState::getLibCallDecl): Mark exceptional library functions as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1138 noreturn.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1139 (IRState::attributes): Gracefully handle @attribute, and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1140 @attribute(null).
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1141
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1142 2013-02-28 Jernej Krempus <jkrempus@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1143
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1144 * d-builtins.c (d_attribute_table): Renamed it to
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1145 d_builtins_attribute_table.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1146 * d-lang.cc (d_attribute_table): Added an empty table
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1147 * d-lang.cc (LANG_HOOKS_COMMON_ATTRIBUTE_TABLE): Defined it as
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1148 d_builtins_attribute_table.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1149 * d-lang.h (d_builtins_attribute_table): Added a declaration.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1150 * d-codegen.cc (IRState::attributes): Changed it so it goes through
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1151 in_attrs and looks for any @gcc.attribute.attribute("attr_name").
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1152 * d-objfile.cc (ObjectFile::setupSymbolStorage): Pass userAttributes
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1153 instead of attributes in all calls to IRState::attributes.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1154 * d-ctype.cc (TypeTypedef::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1155 (TypeEnum::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1156 (TypeStruct::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1157 (TypeClass::toCtype): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1158 * libphobos/libdruntime/gcc/attribute.d: New file.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1159
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1160 2013-02-28 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1161
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1162 * d-lang.cc (d_handle_option): Remove OPT_fdeprecated and
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1163 OPT_Wsign_compare, add handling for OPT_Wdeprecated.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1164 (d_post_options): Handle Wdeprecated and Werror switch combination.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1165
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1166 2013-02-27 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1167
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1168 * d-codegen.cc (ArrayScope::ArrayScope): Don't setup length var if its
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1169 value is known at compile time.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1170 (ArrayScope::setArrayExp): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1171 * d-decls.cc (uniqueName): Remove function.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1172 (VarDeclaration::toSymbol): Set decl assembler name directly.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1173 (FuncDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1174
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1175 2013-02-15 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1176
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1177 * Make-lang.in (GDC_EXTENDED_ASM_SYNTAX): Remove macro.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1178
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1179 2013-02-14 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1180
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1181 * d-lang.h (D_DECL_IS_CONTRACT): Remove macro.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1182 * d-decls.cc (FuncDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1183
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1184 2013-02-13 Iain Buclaw <ibuclaw@gdcproject.org>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1185
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1186 * d-lang.cc (d_gcc_is_target_win32): Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1187 (d_add_builtin_version): New function to handle define_builtin
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1188 callback from backend.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1189 * d-codegen.cc (IRState::maybeExpandSpecialCall): Remove intrinsic bt.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1190
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1191 * d-builtins.c: Merge with d-builtins2.cc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1192 * d-builtins2.cc: Remove.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1193
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1194 2013-02-07 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1195
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1196 * d-lang.cc (d_init): Use gcc's config system for predefined OS versions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1197 * setup-gcc.sh: Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1198 * target-ver-syms.sh: Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1199
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1200 2013-02-05 Iain Buclaw <ibuclaw@ubuntu.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1201
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1202 * d-builtins2.cc (gcc_type_to_d_type): Remove STRUCTTHISREF condition.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1203 * d-decls.cc (FuncDeclaration::toSymbol): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1204 * d-elem.cc (ThisExp::toElem): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1205 * d-ctype.cc (TypeSArray::toCtype): Remove SARRAYVALUE condition.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1206 * d-codegen.cc (IRState::isDeclarationReferenceType): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1207 (IRState::isArgumentReferenceType): Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1208
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1209 2013-02-01 Johannes Pfau <johannespfau@gmail.com>
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1210
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1211 * d-lang.cc (d_init): Use gcc's config system for predefined CPU versions.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1212 (d_init): Fix definition of D_LP64 version.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1213 * setup-gcc.sh: Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1214 * target-ver-syms.sh: Likewise.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1215
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1216
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1217 Copyright (C) 2013 Free Software Foundation, Inc.
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1218
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1219 Copying and distribution of this file, with or without modification,
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1220 are permitted in any medium without royalty provided the copyright
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1221 notice and this notice are preserved.