1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
|
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (MELT_VERSION_STRING): Bump to 1.3rc2+.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{MELT plugin 1.3 release candidate 2}}
* melt-runtime.h (MELT_VERSION_STRING): Bump to 1.3rc2.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{more stable, but...}}
* melt/generated/*: Regenerated all.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{notice the new plugin/program argument}}
* melt-runtime.cc (MELT_MIN_FULLTHRESHOLD_KW)
(MELT_DEFAULT_FULLTHRESHOLD_KW, MELT_MAX_FULLTHRESHOLD_KW):
Significantly increased.
(melt_verbose_full_gc): New flag. Can be set with
-fplugin-arg-melt-verbose-full-gc=1 ...
New plugin or program argument: verbose-full-gc....
(melt_really_initialize): Set melt_verbose_full_gc according to
verbose-full-gc argument.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{still unstable probably}}
* melt-runtime.h (meltgc_allocate): The tracing with
melt_alptr_1... is done when MELT_HAVE_RUNTIME_DEBUG.
* melt/generated/*: Regenerated all.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
{{very unstable; could work only with ASLR disabled...}}
* melt-runtime.h (MELT_ALIGN, MELT_LIKELY, MELT_UNLIKELY): Defined
earlier.
(melt_magic_discr): Use MELT_UNLIKELY.
(melt_debugbacktrace): Defined with melt_debugbacktrace_at.
(melt_debugmsgval): Defined correctly.
* melt-runtime.cc (Melt_Module::run_marking)
(Melt_Module::run_forwarding): use melt_debuggc_eprintf.
(melt_allocate_young_gc_zone, melt_free_young_gc_zone): Use
MELT_UNLIKELY for melt_alptr_1, ... tests.
(melt_really_initialize): Add mmap-reserve runtime argument to
forcibly reserve megabytes.
* melt/generated/meltrunsup-inc.cc: Manually edited for more
debuggc on forwarding.
* melt/warmelt-base.melt (messagenum_dbg, longbacktrace_dbg)
(debugcstring, debuglong): Use melt_debugeprintf.
(valdesc_object): Removed the hack for monitoring of copying of
alptr1, alptr2.
* melt/warmelt-modes.melt (generate_runtypesupport_forwcopy_fun):
Emit support for melt_alptr_1, ... in prologue of melt_forwarded_copy.
2016-05-11 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h: Replace all the debugep* macros or functions
with melt_debugep*...
(melt_debugeprintf_raw): Rename debugeprintf_raw macro.
(melt_debugeprintfline): Rename debugeprintfline macro.
(melt_debugeprintf): Rename debugeprintf macro.
(melt_debugeprintflinenonl): Rename debugeprintflinenonl macro.
(melt_debugeprintvalue): Rename debugeprintvalue macro.
(melt_debugebacktrace): Rename debugebacktrace macro.
(melt_debugeputs_at): Rename debugeputs_at inline function.
(melt_debugeputs): Rename debugeputs macro.
(melt_debugvalue_at): Rename debugvalue_at inline function.
(melt_debugvalue): Rename debugvalue macro.
(melt_debugmsgval_at): Rename debugmsgval_at inline function.
(melt_debugmsgval): Rename debugmsgval macro.
(melt_debugbacktrace_at): Rename debugbacktrace_at inline
function.
(melt_debugbacktrace): Rename debugbacktrace macro.
(melt_debugnum_at): Rename debugnum_at inline function.
(melt_debugnum): Rename debugnum macro.
(debugeprintf_raw, debugeprintf, debugeprintflinenonl)
(debugeprintfline, ebugeprintfnonl, debugeprintvalue)
(debugebacktrace, debugeputs, debugvalue, debugmsgval)
(debugbacktrace, debugnum): Temporarily define these as macros,
for backward compatibility till we regenerate everything.
* melt-runtime.cc: Likewise replace all the debugep* macros or
functions with melt_debugep* ...
(melt_caught_assign_at, melt_cbreak_at, melt_garbcoll)
(meltgc_new_string_without_suffix)
(meltgc_new_string_nakedbasename, melt_tempdir_path)
(melt_run_make_for_plugin, melt_run_make_for_branch)
(melt_compile_source, melt_find_file_at, melt_skipspace_getc)
(meltgc_readval, meltgc_read_file, melt_attribute_callback)
(melt_load_module_index, meltgc_run_cc_extension)
(meltgc_load_flavored_module, "meltgc_start_flavored_module)
(meltgc_load_one_module, meltgc_load_module_list)
(meltgc_load_modules_and_do_mode, melt_really_initialize)
(melt_do_finalize, melt_output_cfile_decl_impl_secondary)
(melt_fatal_info, melt_sparebreakpoint_0_at)
(melt_sparebreakpoint_1_at, melt_set_flag_debug)
(melt_clear_flag_debug): Use melt_debugeprintf, etc...
2016-05-10 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (melt_allocate_young_gc_zone): Correct order of
arguments to xcalloc. Test MELT_HAVE_RUNTIME_DEBUG.
(melt_free_young_gc_zone): Use #if MELT_HAVE_RUNTIME_DEBUG.
(meltgc_make_special): Ditto.
(meltgc_make_specialdata): Ditto.
(melt_delete_unmarked_new_specialdata): Ditto.
(melt_clear_old_specialdata): Ditto.
(melt_garbcoll): Ditto.
(meltgc_new_raw_object): Ditto.
(melt_application_count, melt_application_depth): Always defined.
(melt_apply): Runtime test on MELT_HAVE_RUNTIME_DEBUG or
melt_flag_debug.
(melt_compile_source): Use #if MELT_HAVE_RUNTIME_DEBUG.
(meltgc_run_cc_extension): Ditto.
2016-05-09 Basile Starynkevitch <basile@starynkevitch.net>
{{still unstable}}
* melt/generated/*: Regenerated all.
2016-05-09 Basile Starynkevitch <basile@starynkevitch.net>
{{very unstable; I had an heisenbug... -code crashing with ASLR,
but nearly working without; The commit on 2016-05-03 commented as
more stable as GCC5 plugin; but perhaps wrong with
generate_runtypesupport_forwcopy_fun handle the unlikely case of
young discriminant same as current object... etc is perhaps
incorrect}}
* melt-runtime.h: Add long comment about MELT_HAVE_DEBUG vs
MELT_HAVE_RUNTIME_DEBUG and melt_flag_debug. Use more
systematically MELT_HAVE_RUNTIME_DEBUG...
(MELT_ENTERFRAME_AT): Test melt_flag_debug. The buffer for
location is always needed.
(MELT_TOUCHED_CACHE_SIZE): Raised slightly.
(meltgc_touch): Introduce the touchgapwords constant.
* melt-runtime.cc: Use more systematically
MELT_HAVE_RUNTIME_DEBUG...
(Melt_Module::Melt_Module): Copy dlerror() to some static buffer
before showing it.
(melt_compile_source, meltgc_readsexpr)
(meltgc_readmacrostringsequence, meltgc_readval)
(meltgc_read_from_rawstring, meltgc_read_from_val): Always have a
curlocbuf..
(meltgc_run_cc_extension): Copy dlerror() to some static buffer
before showing it.
(meltgc_start_module_by_index,meltgc_load_flavored_module)
(meltgc_start_flavored_module, meltgc_load_one_module)
(meltgc_load_module_list, meltgc_load_modules_and_do_mode): Always
have some locbuf.
(melt_really_initialize): Copy dlerror() to some static buffer.
(melt_fatal_info): call melt_dbgshortbacktrace on runtime or
flagged debugging.
2016-05-06 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-05-06 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-base.melt: Use #if MELT_HAVE_RUNTIME_DEBUG > 0
in most runtime code.
* melt/warmelt-modes.melt: Likewise.
(generate_runtypesupport_forwcopy_fun): Ditto, in emitted
melt_forwarded_copy.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
{{we should also check that the same melt.so can be used with and
without MELT_HAVE_DEBUG}}
* melt/generated/*: Regenerated all.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
{{replace (cppif MELT_HAVE_DEBUG ...) with
some (cppif ##{MELT_HAVE_DEBUG>0} ...) everywhere}}
* melt/warmelt-macro.melt: Rewrite (cppif MELT_HAVE_DEBUG...)
(mexpand_assert_msg, mexpand_debug): Expand to "MELT_HAVE_DEBUG>0"
* melt/warmelt-normal.melt (normexp_cheader): Rewrite (cppif
MELT_HAVE_DEBUG...)
* melt/warmelt-outobj.melt: Ditto. Also in emitted frame
handling...
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
{{systematically use #if MELT_HAVE_DEBUG > 0 everywhere, but
cppif MELT_HAVE_DEBUG remains}}
* melt-runtime.h: Use #if MELT_HAVE_DEBUG > 0
(melt_magic_discr, melt_dynobjstruct_make_raw_object)
(melt_getfield_object_at, class Melt_CallProtoFrame)
(Melt_CallFrameWithValues<>)
(MELT_LOCATION,MELT_LOCATION_HERE_MACRO, MELT_LOCATION_HERE)
(MELT_LOCATION_HERE_PRINTF_MACRO, MELT_LOCATION_HERE_PRINTF):
Ditto.
* melt-runtime.cc (Melt_CallProtoFrame::_dbgcall_file_)
(Melt_CallProtoFrame::_dbgcall_count_): Ditto.
* melt/warmelt-first.melt (melt_callcount, melt_need_dbg)
(melt_need_dbglim, hook_symbol_importer): Ditto.
* melt/warmelt-genobj.melt (compilobj_nrep_return): Ditto.
* melt/warmelt-outobj.melt (output_curframe_declstruct)
(output_curframe_declstruct_init, outpucod_initialmoduleroutine)
(emit_syntax_testing_routine): Ditto, in emitted code.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (melt_alptr_1, melt_alptr_2, melt_objhash_1)
(melt_objhash_2): Wrapping extern "C" when defining them...
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (melt_alptr_1, melt_alptr_2, melt_objhash_1)
(melt_objhash_2): Forcibly always defined near end of file.
This is a dirty hack.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-base.melt (valdesc_multiple, valdesc_jsonobject)
(valdesc_double) Typos.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h: Don't early define MELT_HAVE_DEBUG when
MELT_IS_PLUGIN.
Force MELT_HAVE_DEBUG 1 when CHECKING_P.
* melt/warmelt-base.melt: Emit #if MELT_HAVE_DEBUG > 0 test.
(valdesc_object, valdesc_mapstrings)
(valdesc_decay, valdesc_multiple, valdesc_closure)
(valdesc_routine, valdesc_hook, valdesc_jsonobject)
(valdesc_string, valdesc_strbuf, valdesc_pair, valdesc_list)
(valdesc_int, valdesc_double, valdesc_mixloc, valdesc_mixbigint)
(valdesc_real, valdesc_special_data): Remove GCC 4.9 specific
generated code, for macros like ggc_alloc_*, notably in the copy
chunks :valdesc_copychunk field.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (melt_alptr_1, melt_alptr_2, melt_objhash_1)
(melt_objhash_2): Declare them if they are not macro, even without
MELT_HAVE_DEBUG..
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (meltgc_allocate, melt_allocatereserved): Use
melt_alptr_1 ... only when MELT_HAVE_DEBUG > 0.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (melt_alptr_1, melt_alptr_2): #define-d as NULL
without MELT_HAVE_DEBUG
(melt_objhash_1, melt_objhash_2): #define-d as 0U without
MELT_HAVE_DEBUG.
* melt-runtime.cc (melt_alptr_1, melt_alptr_2, melt_objhash_1)
(melt_objhash_2): Declared as variables (to be modified by gdb)
only when MELT_HAVE_DEBUG > 0.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-05-04 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (MELT_VERSION_STRING): Bump to 1.3.rc1+. Use
CHECKING_P instead of ENABLE_CHECKING with GCC 6 to get
MELT_HAVE_DEBUG.
(melt_break_alptr_1, melt_break_alptr_2, melt_break_objhash_1)
(melt_break_objhash_2): defined as no-op without MELT_HAVE_DEBUG.
* melt-runtime.cc (melt_alptr_1, melt_alptr_2): Always defined,
probably a temporary bug...
* melt/warmelt-modes.melt (generate_runtypesupport_forwcopy_fun):
In emitted melt_forwarded_copy use #if MELT_HAVE_DEBUG > 0.
2016-05-03 Basile Starynkevitch <basile@starynkevitch.net>
{{MELT plugin 1.3 release candidate 1}}
* melt-runtime.h (MELT_VERSION_STRING): Bump to 1.3.rc1
2016-05-03 Basile Starynkevitch <basile@starynkevitch.net>
{{more stable as GCC5 plugin; but perhaps wrong}}
* melt/warmelt-modes.melt (generate_runtypesupport_forwcopy_fun)
In the generated melt_forwarded_copy handle the unlikely case of
young discriminant same as current object...
(generate_runtypesupport_scanning): In the generated melt_scanning
handle the unlikely case of an already forwarded pointer...
* melt/generated/*: Regenerated all.
2016-05-03 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (meltgc_start_all_new_modules): Reserve a few
kilowords before running each module initialization.
2016-05-03 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (MELT_ALIGN, MELT_LIKELY, MELT_UNLIKELY):
Moved before.
2016-05-02 Basile Starynkevitch <basile@starynkevitch.net>
{{unstable as GCC5 plugin}}
* melt-runtypes-5.h:
(gt_ggc_mx_gimple): New function, workaround to work as GCC 5
plugin.
2016-05-02 Basile Starynkevitch <basile@starynkevitch.net>
* melt-run.proto.h: Include "gimple-predict.h" &
"tree-ssa-scopedtables.h" only for GCC 6.
* melt/warmelt-base.melt: Update copyright year.
* melt/libmelt-ana-gimple.melt:
(gimple_predict): Don't use "gimple-predict.h" functions but steal
code from it for GCC 5 compatibility.
2016-05-02 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-05-02 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h: Improve comment about MELT_VERSION_STRING.
Update it to 1.3.pre1.
2016-04-27 Basile Starynkevitch <basile@starynkevitch.net>
{{remove GCC 4.x specific code}}
* melt-run.proto.h: Remove GCC 4.x code & includes.
* melt-runtime.h: Likewise, notably for melt_fatal_error...
* melt-runtime.cc: Likewise.
(melt_resize_scangcvect, melt_branch_process_arguments)
(melt_argument, meltgc_strbuf_reserve, melt_assert_failed)
(melt_val2passflag): Ditto.
2016-04-26 Basile Starynkevitch <basile@starynkevitch.net>
* melt/libmelt-ana-base.melt: Remove GCC 4.x specific code
* melt/libmelt-ana-tree.melt: Ditto.
* melt/libmelt-ana-gimple.melt: Ditto.
2016-04-25 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-18 Basile Starynkevitch <basile@starynkevitch.net>
* melt-run.proto.h (DISABLE_CHECKING, ENABLE_CHECKING): Remove.
2016-04-18 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-18 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-base.melt: Replace ENABLE_CHECKING with
MELT_HAVE_DEBUG.
* melt/warmelt-modes.melt: Ditto.
* melt/warmelt-outobj.melt: Ditto.
2016-04-18 Basile Starynkevitch <basile@starynkevitch.net>
{{preparing for deprecation of ENABLE_CHECKING}}
* melt-runtime.h: Replace most occurrences of ENABLE_CHECKING with
MELT_HAVE_DEBUG. Temporarily forcing MELT_HAVE_DEBUG to be 1.
* melt-runtime.cc: Replace occurrences of ENABLE_CHECKING with
MELT_HAVE_DEBUG.
2016-04-17 Basile Starynkevitch <basile@starynkevitch.net>
* melt/libmelt-ana-gimple.melt:
(gimple_transaction): Use gimple_transaction_label_norm.
Not sure that (gccif "6." ...) does what it should...
2016-04-16 Basile Starynkevitch <basile@starynkevitch.net>
* melt/libmelt-ana-gimple.melt:
(melt_build_transaction_with_label_norm): New inlined function,
for gimple_transaction operator implementation...
2016-04-15 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (Melt_CallProtoFrame): always have some
dbg_serial() even without debugging.
* melt-runtime.cc (meltgc_new_list_from_pair): Forgot #undef pairv.
2016-04-15 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-15 Basile Starynkevitch <basile@starynkevitch.net>
{{trouble merging with GCC 6 svn rev 229800.
possible issues with Melt_CallProtoFrame::_dbgcall_file_ ...
}}
* melt-build-script.tpl: Replace _NOMDFIVESUM_ with
_MELTNOMDFIVESUM_.
* melt-build-script.sh: Regenerate.
* melt-runtime.cc: Update copyright years.
2016-04-14 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h: Use more systematically the melt*ptr_t types.
* melt-runtime.cc (meltgc_ppout_gimple_seq)
(meltgc_ppout_basicblock): Ditto.
* melt/libmelt-ana-gimple.melt: Ditto.
2016-04-14 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-14 Basile Starynkevitch <basile@starynkevitch.net>
{{merging with even more of GCC 6, i.e. svn rev 227942; very
unstable...}}
* melt/generated/warmelt-base+01.cc: Manually edited.
* melt/generated/warmelt-debug.cc: Ditto.
* melt/generated/warmelt-macro+01.cc: Ditto.
* melt/warmelt-first.melt (ctype_gimple, ctype_gimpleseq): Change
the :ctype_marker field to gt_ggc_mx_gimple. Should consider using
overloaded gt_ggc_mx.
* melt-runtime.h (melt_gimple_call_set_lhs): Use melt_gimpleptr_t
in arg & result.
* melt-runtime.cc (meltgc_retrieve_location_from_value)
(meltgc_ppout_gimple): Likewise.
(melt_gt_ggc_mx_gimple_seq_d): Specialized for GCC 6.
2016-04-14 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtypes-5.h: Copied from melt-runtypes-6.h bur untested
with GCC 5 as plugin.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtypes-6.h (melt_loopptr_t, melt_rtxptr_t)
(melt_bitmapptr_t, melt_rtvecptr_t): New types.
* melt/warmelt-first.melt (ctype_loop, ctype_rtx, ctype_bitmap)
(ctype_rtvec): Use them.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtypes-6.h (melt_gimpleseqptr_t, melt_basicblockptr_t)
(melt_edgeptr_t): New types.
* melt/warmelt-first.melt (ctype_gimple_seq, ctype_basic_block)
(ctype_edge): Use them.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in (MELT_H): order matters.
* melt-runtime.h: Include "melt-runtypes.h" earlier.
(melt_treeptr_t, melt_gimpleptr_t): Move the typedefs to
melt-runtypes.h.
* melt-runtypes-6.h (melt_gimpleptr_t, melt_treeptr_t): Define
here.
2016-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in (melt-runtypes.h): New file and rule to generate it.
* melt-runtime.h: Now includes "melt-runtypes.h"
* melt-runtypes-6.h: New variant, for GCC 6, of melt-runtypes.h
2016-02-12 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerated all.
2016-02-12 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in (MELT_H): Order of header files matter
2016-02-12 Basile Starynkevitch <basile@starynkevitch.net>
{{ preparing for GCC 6 svn rev227941 change where gimple is no
more a pointer, but a class... See
https://gcc.gnu.org/ml/gcc/2016-02/msg00149.html for more}}
* melt-runtime.h (melt_treeptr_t, melt_gimpleptr_t):
New typedefs.
(MELT_VERSION_STRING): Bump to 1.3.pre
* melt/warmelt-first.melt (ctype_tree, ctype_gimple):
Use them.
2016-02-11 Basile Starynkevitch <basile@starynkevitch.net>
{{ merging with trunk r227925 }}
* melt/libmelt-ana-tree.melt:
(pragma_lex): Can take a 2nd argument for GCC 6.
2016-02-10 Basile Starynkevitch <basile@starynkevitch.net>
* melt-run.proto.h: include "gimple-predict.h" for GCC >= 5.0
* melt/libmelt-ana-gimple.melt: mention that it might go here.
2016-02-10 Basile Starynkevitch <basile@starynkevitch.net>
{{ merging with trunk 226090 ; UNSTABLE }}
* melt-run.proto.h: include tree-ssa-scopedtables.h
* tree-ssa-dom.c: skip second record_edge_info
2015-07-24 Basile Starynkevitch <basile@starynkevitch.net>
{{ MELT 1.2.0 for GCC 4.9 & GCC 5.x release }}
* melt-runtime.h (MELT_VERSION_STRING): Bump to 1.2.0
* melt-runtime.cc: Issue a warning against Debian bug#793478
2015-06-12 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerate all.
2015-06-12 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-modes.melt (generate_runtypesupport_cloning_fun)
typo emitting a buggy cloning.
2015-06-12 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-modes.melt (generate_runtypesupport_cloning_fun)
thinko.
2015-06-12 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-base.melt: Add a line comment like
// in file $_MELT_FILE_ line $_MELT_LINE_
in most :valdesc_* chunks.
* melt/warmelt-modes.melt (generate_runtypesupport_cloning_fun)
(generate_runtypesupport_scanning): Use more output_for_runtime.
2015-06-11 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-modes.melt (output_for_runtime): New function.
(generate_runtypesupport_enum_objmagic)
(generate_runtypesupport_gty): Use it sometimes.
2015-06-11 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (meltgc_new_list_from_pair): New declaration.
* melt-runtime.cc (meltgc_new_list_from_pair): New function.
* melt/warmelt-base.melt (make_list_from_pair): New primitive.
* melt/warmelt-moremacro.melt (mexpand_quote): Use it for multiarg
quote of macrostrings.
2015-06-10 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h (melt_gcc_optimize): New inline function giving
optimize. #undef the optimize from gcc/options.h in build tree.
(MELT_LOW_OPTIMIZATION): New attribute, to compile with -Og some
generated routines.
(MELT_FLEXIBLE_DIM) set to 1 to avoid using flexible array
members.
* melt/warmelt-outobj.melt (outpucod_initialmoduleroutine) Emit
the meltmod*initialmeltchunk* and melt_start_this_module functions
with MELT_LOW_OPTIMIZATION.
* melt/xtramelt-playground: temporarily define playgr_foo.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-base.melt (melt_make_sexpr): Moved near front.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerate all.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
{{ The magic symbols are _MELT_FILE_ & _MELT_LINE_, mimicking the
__FILE__ and __LINE__ C magical macros. }}
* melt-runtime.cc (MELT_MAGICSYMB_FILE) is now "_MELT_FILE_"
(MELT_MAGICSYMB_LINE) becomes "_MELT_LINE_".
(meltgc_readmacrostringsequence, meltgc_readval): Update test for
the _MELT_FILE_ & _MELT_LINE_ magical symbols.
* melt/warmelt-base.melt: in comment inside macrostring,
temporarily use % instead of $....
* melt/warmelt-moremacro.melt (mexpand_quote): Handle variadic
quote, but warns when outside of macro-string.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerate all.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.cc (meltgc_readmacrostringsequence): Move warning
about quoted macro string with $%s symbol.
* melt/warmelt-moremacro.melt (mexpand_quote): More verbose
messages when quote gets more than one argument, perhaps should
handle it differently...
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerate all.
2015-06-09 Basile Starynkevitch <basile@starynkevitch.net>
{{New feature: magic symbols MELT_SOURCE_FILE & MELT_SOURCE_LINE
are expanded at parse time to the file name and the line number.
Garbage collection threshold are increased.}}
* melt-predef.list (UNKNOWN_LOCATION): new predefined.
* melt-runtime.cc
(MELT_MIN_MINORSIZE_KW, MELT_MAX_MINORSIZE_KW)
(MELT_MIN_FULLTHRESHOLD_KW, MELT_DEFAULT_FULLTHRESHOLD_KW)
(MELT_MIN_PERIODFULL, MELT_DEFAULT_PERIODFULL): Increase GC
thresholds.
(meltgc_readmacrostringsequence, meltgc_readval): Magic processing
for MELT_SOURCE_FILE and MELT_SOURCE_LINE symbols, always parsed
magically!
* melt/warmelt-first.melt: Predefine :UNKNOWN_LOCATION keyword.
* melt-module.mk: Pass -DMELTBUILD_BASE=$(basename $<)...
2015-05-27 Basile Starynkevitch <basile@starynkevitch.net>
{{ensure that MELT can be compiled with --enable-checks=release}}
* melt-runtime.h (MELT_LOCATION_HERE,MELT_LOCATION_HERE_PRINTF):
Are no-op when MELT_HAVE_DEBUG is false.
* melt-runtime.cc (meltgc_send, melt_compile_source)
(meltgc_readsexpr, meltgc_readmacrostringsequence)
(meltgc_readval): Clear the first byte of curlocbuf...
2015-05-27 Basile Starynkevitch <basile@starynkevitch.net>
* melt/generated/*: Regenerate all.
2015-05-27 Basile Starynkevitch <basile@starynkevitch.net>
* melt-runtime.h: #include "gcc-plugin.h" & "plugin-version.h" &
"diagnostic-core.h"
* melt-runtime.cc (melt_ggcstart_callback, melt_garbcoll)
(melt_load_module_index): More precise melt_fatal_error message.
2015-05-27 Basile Starynkevitch <basile@starynkevitch.net>
{{merged with GCC 5, so}}
* melt-runtime.h (melt_fatal_error, melt_fatal_error_at_line):
Pass UNKNOWN_LOCATION for GCC 5. Re-indented with command:
astyle --style=gnu -s2
* melt-runtime.cc: Re-indented with command:
astyle --style=gnu -s2
(melt_branch_process_arguments, melt_ggcstart_callback)
(melt_reserved_allocation_failure): Use melt_fatal_error instead
of fatal_error.
* melt/generated/meltrunsup-inc.cc: Manually edited for fatal_error.
* melt/generated/warmelt-first.cc: Ditto.
* melt/warmelt-first.melt (melt_assert_failure_fun): Ditto.
* melt/warmelt-modes.melt (generate_runtypesupport_scanning):
Ditto, in the emitted code.
* Makefile.in: mention s-gtype instead of gt-melt-runtime.h in
dependencies.
(TEXI_GCCINT_FILES): Add meltgendoc.texi.
2015-01-23 Basile Starynkevitch <basile@starynkevitch.net>
* melt/libmelt-ana-gimple.melt: Adding all static_casts. Compiles
ok.
2015-01-22 Basile Starynkevitch <basile@starynkevitch.net>
{{@@ STILL UNSTABLE and not fully building, but with progress...}}
* melt/libmelt-ana-gimple.melt: Adding more static_casts. Incomplete.
2015-01-21 Basile Starynkevitch <basile@starynkevitch.net>
{{@@ STILL UNSTABLE and not fully building, but with progress...}}
* melt/libmelt-ana-gimple.melt: Adding static_casts. Incomplete.
2015-01-21 Basile Starynkevitch <basile@starynkevitch.net>
{{@@ STILL UNSTABLE and not fully building, but with progress...}}
* melt/libmelt-ana-base.melt (melthk_gimple_gate)
(melthk_gimple_execute): Remove debugeprintf-s.
* melt/libmelt-ana-gimple.melt: Use gimple_build_assign instead of
gimple_build_assign_with_ops for GCC 5.0, but still incomplete so
the generated C++ does not compile yet...
2015-01-21 Basile Starynkevitch <basile@starynkevitch.net>
{{merged with trunk -i.e. GCC5.0 in stage4- using
svn merge -r209216:219879 svn+ssh://bstarynk@gcc.gnu.org/svn/gcc/trunk
but should probably have used
svn merge -r209216:219879 ^/trunk
@@@ UNSTABLE since libmelt-ana-gimple.melt not compiling, but
translator painfully bootstrapping!!@@@@ }}
* toplev.c: Merged manually by keeping MELT extra stuff.
* toplev.h: Likewise.
* gengtype.c: Add "melt-runtime.h" in list, but merged with trunk.
* melt-runtime.h (MELT_VERSION_STRING): Bump to "1.2-pre-merged".
(meltgc_walk_gimple_seq): Remove.
(gt_ggc_mx_gimple_statement_d): Same for GCC 4.9 & 5.0
* melt-runtime.cc: Update copyright year.
(ggc_alloc_cleared_melt_valuevector_st, melt_resize_scangcvect):
Call ggc_internal_cleared_alloc.
(melt_val2passflag): Skip TODO_verify_ssa, TODO_verify_flow,
TODO_verify_stmts, TODO_verify_rtl_sharing for GCC 5.0.
(meltgc_walkstmt_cb, meltgc_walktree_cb)
(melt_tree_walk_frame_size, meltgc_walk_gimple_seq): Remove.
(melt_gt_ggc_mx_gimple_seq_d): Call
gt_ggc_mx_gimple_statement_base.
* melt-build-script.tpl: Update copyright year. Don't symlink
meltrunsup.h anymore.
* melt-build-script.sh: Regenerate.
* melt/warmelt-base.melt: Update copyright year.
(valdesc_object, valdesc_mapobjects, valdesc_mapstrings)
(valdesc_multiple, valdesc_closure, valdesc_routine, valdesc_hook)
(valdesc_bucketlongs, valdesc_jsonobject, valdesc_string)
(valdesc_strbuf, valdesc_pair, valdesc_list, valdesc_int)
(valdesc_double, valdesc_mixint, valdesc_mixloc)
(valdesc_mixbigint, valdesc_real, valdesc_special_data): Use
ggc_internal_alloc & ggc_internal_cleared_alloc for GCC 5.0.
(json_canonical_name): Use ISUPPER, ISALPHA, TOUPPER instead of
their standard <ctype.h> lowercase macros.
* melt/warmelt-modes.melt: Update copyright year.
(generate_runtypesupport_forwcopy_fun): Emit both GCC 4.9 & 5.0
compatible code.
* melt/libmelt-ana-base.melt: Update copyright year.
* melt/libmelt-ana-gimple.melt: TO BE IMPROVED
* melt/generated/*: Painfully regenerated several times thru GCC
4.9 MELT plugin.
2015-01-20 Basile Starynkevitch <basile@starynkevitch.net>
Move previous gcc/ChangeLog.MELT to gcc/ChangeLog.MELT.2012-2014
Copyright (C) 2015 - 2016 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
/// Local Variables:
/// mode: change-log
/// End:
|