/
Changes
executable file
·990 lines (844 loc) · 40.5 KB
/
Changes
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
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
-*- change-log -*-
Started on CPAN with B-C-1.04_12
The Perl compiler was in CORE from alpha4 until Perl 5.9.4 and worked
quite fine with Perl 5.6 and 5.8
1.25 2010-04-11 rurban
* C.pm: remove global my_perl, pass it properly around.
* t/c*.t: added test 40 \000 byte in PV failing on ori 5.6.2 (Nick Koston),
added more magic tests for shared vars - n,p,P magic: 39-43. 41 nyi
* t/modules.t: fix -t (run module tests), print header only on full test
* t/modules.pm: do not test core or deprecated modules, esp. do not download perl
Added is_subset.
* t/testm.sh: implement -k
* t/testc.sh, t/TESTS: add 44 for weaken import and magic_killbackrefs #72922
1.24 2010-02-15 rurban
* C.pm: Fixed off by one array access in magic array init (34)
- valgrind is your friend.
Fixed aelemfast padsv access crash (Text::Tabs on freebsd7)
Fixed wrong stash names in gv_stashpv analog to gv_fetchpv
(Text-Tabs+Wrap t/dandv.t)
* t/testm.sh: implement -s without log file
* t/modules.pm: export skip_modules, silence module scanning STDERR
1.23 2010-02-14 rurban
* t/testm.sh: chmod +x
* t/modules.t: fix $have_IPC_Run
1.22 2010-02-14 rurban
Tested with ActivePerl 5.10.0
* bytecode.h: unshare_hek exception for WIN32, not only MINGW
* t/modules.t: Added list of to be skipped modules, which cycle endlessly.
Improve todo message.
* t/testm.sh: add option -s "install skipped modules"
* Makefile.PL, cc_harness, perlcc: fix ldflags for ActivePerl 5.10.0
for MSVC6 (ccversion 12) -opt:ref,icf leads to invalid outfile "pt:ref,icf"
* c+cc test 29 fails on 5.10 randomly. Make it a TODO
1.21 2010-02-14 rurban
* C.pm: Add missing Nullop for CC on 5.11.4 (cc 12).
Test 38 passes
1.20 2010-02-14 rurban
* C.pm: #define PERL_CORE broke Null macros on 5.11.4. Define those.
1.19 2010-02-13 rurban
Almost fixed evaltry (12) with proper cop_seq setup, just solaris and debian
fail sometimes. Tested ok with strawberry 5.10.1
* C.pm: fixed evaltry (test 12) mostly, NVX was shared with 2 xpad_cop_seq ints
which accidently just worked before 1.17 with %s, but not after changing
to the %g representation.
Ignore unused random (overlong) xpviv IV, causing
"warning: this decimal constant is unsigned only in ISO C90"
Defer rv => cv to run-time < 5.10. Fixes ExtUtils::Install
Defer xpvmg->pv init to run-time < 5.10. Fixes MooseX::Types
Check for NV inf. Fixes compilation of DateTime
Defined PERL_CORE: Fxied Windows problems with setjmp undef'ed in XSUB.h
Added Win32 workaround for missing PL_do_undump
Stripped perl_ prefix from perl_get_cv, perl_call_pv, perl_call_method
* CC.pm (1.07): added -fslow-signals.
Disabled inlined pp_enter: Fails on empty cxstack.
Backed out inlining of enterloop: GIMME_V fails on freebsd7
Remove strawberry PerlProc_setjmp definition, #define PERL_CORE fixed that
* Bytecode.pm (1.06): same NVX => xpad_cop_seq fix as in C.pm, added 2 new
bytecodes (cop_seq_low, cop_seq_high), fixed tests 9,10,12. Passes
all tests > 5.6 now.
* bytecode.pl: added cop_seq_low (155), cop_seq_high (156) instead of xnv.
No conversion code for loading older bytecode needed, but fragile (double => 2 int)
* t/modules.t: refactored by Todd Rinaldo (toddr). 4*tests per module:
-s a, exitcode 0, ok, no warnings on stderr
* t/TESTS: added 38, failing on CC (Nick Koston).
added 39, failing everywhere.
* t/test.pl: refactor: Try to timeout on all tests (compiler and exec) if
IPC::Run is installed
* MANIFEST, *.pod: Moved conference pods to ramblings,
removed lib/B/Asmdata.pm again, added t/qr_loaded_module.pm
* t/testm.sh, t/modules.pm: added, -t not working yet though
* t/b.t: $[ => $]
1.18 2010-02-06 rurban
evaltry (test 12) still broken on most systems.
* C.pm, C.xs: fixed r-magic for 5.6 (ExtUtils::Install,
File::Temp, Template::Stash). need tests for run-time checks (33).
5.6 misses MG->pregcomp
* t/modules.t: check for a.out (test from toddr)
* Makefile.PL: create lib/B/Asmdata.pm beforehand (toddr)
* ByteLoader: fixed duplicate + missing bl_header for bsd and Darwin
(test from toddr)
* test 37 added - AV self-refs, analog to HVs (never failed, just to
be sure).
Removed -qq from 5.6 tests.
1.17 2010-02-03 rurban
Fixed now most module failures, non-threaded at least: bootstrap was in
the way. strawberry perl fixes. Fixed test 29, broke evaltry test 12
* C.pm: Added option -Dfull for all full debugging info, set all options.
Skip saving XS bootstrap. Fixes most XS module failures. i.e.
Digest::MD5, Data::Dumper, ..
Fail: Attribute::Handlers, B::Hooks::EndOfScope, YAML, MooseX::Types
4 for 5.8.9-nt from the top100, and 3 for 5.11.4-nt: Attribute::Handlers,
File::Temp, ExtUtils::Install.
Fixed AV self-references causing endless loops, analog to HVs (test 27)
Fixed Getopt::Long crash with AV D magic (regdata),
save_magic returns now the magic types as string.
Fixed unescaped savere (test ExtUtils::Install).
Fixed GvSTASH "initializer element is not constant" (Test::Harness)
Fixed xrv_list "initializer element is not constant" (Class::MOP < 5.10)
* CC.pm (1.06): Added missing unexported definitions for MSWin32,
>=5.10: newGP, vivify_ref, prepare_SV_for_RV (tests 18, 29).
PerlProc_setjmp, PerlProc_longjmp (tests 12, 32).
Fixed cxinc for 5.11.0
* t/bytecode.t: mixed up 32 with 33.
* t/modules.t, t/top100: new module test, see also the log.modules*
results in the svn repo.
* t/mymodules: added as reference, executed optionally.
* script/cc_harness: ldopts -std if no -B<opt>
1.16 2010-01-27 rurban
use Moose and benchmark still fails. IO even a regression.
* C.pm: Fixed braces warning for empty xpvcv startfield (Nullany),
register int for warn_sv loop
Fixed hv init for magic hashes, pre-allocate array and xpvhv_aux. (test 34)
Fixed method_named (CPAN #53889, test 35) for B::C, better fix than for B::CC.
Added -DH for HV debuggging.
Fixed HV self-references causing endless loops, i.e. with use Moose, test 36.
* CC.pm (1.05): added experimental -finline-ops. Always on. Can be removed if
it works okay for the new inlined versions.
Inlined pp_enter, pp_reset, pp_regcreset, pp_stringify.
Fixed pp_padsv DEREF for 5.10.
Documented test coverage for each op.
Fixed wrong $PERL511 definition.
Added Opcodes support (no_stack), on CPAN as 0.01.
added pp_pushmark pp_break pp_continue to no_stack handling.
Fixed method_named (CPAN #53889, test 35) assuming there is only const
before method_named. No counter examples found so far.
Changed new OBJ => OBJ->new
More curcop->write_back protection.
* Stackobj.pm (1.00_02): RV fix for 5.11.
* t/testc.sh, t/test.pl: added CC specific tests to increase CC op coverage
after 100.
Switched test 32->101 (arith) with 33->32 (evaltry catch die) as it fails
with 5.11.3.
Added new qr test 33 (Nick Koston), test 34 for magic hashes, test 35 for
broken methodcall syntax (method_named), test 36 for HV self-references.
* TESTS: added test 32 (evaltry catch die): Fails on 5.11.3 C/CC only,
<5.11.3 it works okay. Also tests 33, 34, 35, 36.
* ByteLoader/Makefile.PL: removed cygwin gcc specific stack-protector removal.
It was a bug of mine.
Added more AUTHOR gcc -ansi warnings, just -pedantic not.
* Makefile.PL: Added more AUTHOR gcc warnings, also -pedantic.
Added optional Opcodes PREREQ_PM
1.15 2010-01-03 rurban
* t/test.pl: Fixed MSWin32 tests again. Lost the 1.13 patches with 1.14.
1.14 2010-01-02 rurban
* CC.pm (1.04): Fixed entereval/leaveeval for 5.10. Fixes eval "", test 12.
The end of the string CALLRUNOPS needed to be nullified, as in 5.8.
5.11 CORE also needs a patch for this.
Optimized away SP save/restore for %no_stack ops. Need to read this
from opcode.pl eventually.
PERL_ASYNC_CHECK (pending signals) added after every basic blocks with -O1
and every loop.
* C.pm: More 5.10 union braces.
* Stackobj.pm (1.00_01): Added iv and nv to peek.
Added documentation.
* Bblock.pm (1.03_01): Print the argument (sub) to inspect.
Added missing documentation.
* t/testcore.t: improved. added -fail and a list of failing tests.
C now always with -O3.
* t/c_allow_opts.t: Added for -DALLOW_PERL_OPTIONS.
1.13 2009-12-31 rurban
Tested with MSVC (MSVC compiles test29 and bigger examples awfully slow!
7:30min, 30MB mem, 98% CPU, 2GHz)
* C.pm: MSVC fix for "(OP*)Nullany" i.e "(OP*){0}" => "{0}". Fixes
test 27 on MSVC. CC test 12 broken on MSVC AS 5.8
* bytecode.pl: Restore C strictness, printf before declaration.
Undefine debop for MSVC also. Fixed [cpan #53228].
* t/test.pl: Cleanup intermediate MSVC .obj. Skip too slow tests 29
on MSVC, only c.t
Remove >nul for test results on Win32.
More run_cc_perl fixes for Win32.
Be more quiet on MSWin32 also (no 2>/dev/null)
Skip stderr redirection to stdout on cmd.exe tests, t/o.t 5,9.
* t/bytecode.pl: ditto.
* t/TESTS: Fixed 28 for MSWin32 MSVC
1.12 2009-12-31 rurban
__DATA__ handles work now. Also more Bytecode fixes.
* t/testplc.sh: Added -S: skip all but -S and Concise
* Bytecode.pm (1.05): Adapt RV 5.11 change from SV to IV, detect ROK at
B::IV::bsave analog to C.pm. Fixes test 16.
Set prototype sv_flags at first, so it cannot assert. Fixes tests 27 and 29.
More work on 5.6 compat.
* bytecode.pl: Fixed 5.6 %alias_to sizes.
* bytecode.h: Fix BSET_cop_label for 5.11. Fixes test 21.
* t/bytecode.t: Added DEBUGGING to the mix. 5.11 is now completely the
same as 5.10. Remaining failures are now 9,10,12 for DEBUGGING (or
non-threaded?).
* C.pm: Added xpvuv (coverage in 5.6.2 test 21).
Added PMOP->pmstash/pmstashpv (no coverage yet).
Checked against -Wall -Wextra:
Added missing pmop->stash for 5.8.
Added missing cop->cop_io for 5.8.
Added braces to union inits (MSVC Todo).
Remove unused dTARG and dSP.
Fixed CC test 29 on 5.6.2, not checked why.
Fixed __DATA__ test 15 on 5.10 and 5.11.
* TESTS: Updated with 5.10.1 CORE results
1.11 2009-12-29 rurban
Fixed 5.11 RVs, added C optimizations to CC
* C.pm: Adapt RV 5.11 change from SV to IV, detect ROK at B::IV::save.
Fixes test 16.
Added -DW for walk, together with -Dp only.
Forced fullname optimization scalars for B::CC.
Export save_sig and fixup_ppaddr for CC.
* CC.pm (1.03): Fixed Perl_gv_SVadd cast warning.
Added most B::C optimizations. This fixes all threaded tests 15 >= 5.10.
Call save_sig, fixup_ppaddr not yet.
* t/test.pl: simplified (and fixed) keep logic
* t/c_argv.t: cleanup
1.10 2009-12-29 rurban
Fixed @ARGV
* C.pm: fixed couple of minor bugs detected with new t/testcore.t:
t/CORE/comp/retainedlines.t => Use of uninitialized value $len, save_hek
Use of uninitialized value $i in printf at C.pm line 49
Undefined value assigned to typeglob at C.pm line 2901
Do not overwrite run-time @ARGV on >= 5.10 (GP and AV). Fixes test c_argv.t
* t/testcore.t: added
* t/c_argv.t: added. test @ARGV and perlcc
* perlcc (2.06): grab_stash only via new -stash, not automatically;
B::C is better.
ldopts -std only when modules are given.
fix for empty options.
add -sharedxs, -sharedlib; -shared is now for shared linkage,
-sharedlib to create a shared lib (was -shared before but never worked),
-sharedxs to also link shared xsubs, no run-time DynaLoader/XSLoader needed.
1.09 2009-12-27 rurban
* C.pm: Cut down the number of AUTOLOAD'ed optrees, search only on
empty gv->cv (31).
Added very unsafe -O4/-fcop to eliminate most cops and file + line numbers.
Added faster -fav-init to -O2, less unneeded av_extend().
Get rid of fbm_compile (11). Only 5.8.9 is broken.
* CC.pm (1.02): partially fix eval "" for >=5.8.9, wrong CORE cc_runtime.h
definition. (test 29 - eval "")
* t/test.pl, t/c*.t: Simplify C/CC testsuite.
* t/testc.sh: fixed -E
Added -o for orig, no -Mblib
* t/c_o3.t, t/c_o4.t: added
1.08 2009-12-23 rurban
Adapt coding guidelines, add C and cperl coda. Reformat sources.
* C.pm: Detect AUTOLOAD and CLONE (test 27 and 31).
5.10 is now the best release for unoptimized B::C. 5.8 is faster optimized,
but misses some autoloaded xsubs.
Simplify PVMG exclusion; all non-magical, not just PAD_OUR, as in Bytecode.
* Bytecode.pm (1.04): Add missing BM logic to GV >= 5.10. Fixes test 11.
Fixed op_pmflags logic for 5.10 threaded only, no += 2. Fixes test 2.
Protect empty match from setting op_reflags. Fixes test 20.
Add perlversion to the -S generated header.
Document more options -TI, -TF, -u<package>
* perlcc: improve help. use Pod::Usage as module, not via cmdline.
fix previous installation quirks.
* assemble: improve pod. make it installable.
* disassemble: make it installable.
* cc_harness: ditto.
* Makefile.PL: added script/* as EXE_FILES to install them.
* t/TESTS, t/testc.sh, t/testplc.sh: test 31 non-xs AUTOLOAD added
* ByteLoader/Makefile: tuning, bytecode.h triggers now byterun.c
* bytecode.h: Specialize pregcomp on 5.10; add PL_regex_pad[0] for
pregcomp if missing. fixes tests 3,4,5,7,31 on 5.10.
1.07 2009-12-19 rurban
* C.pm: fix fbm_compile (INDEX) for >= 5.10. gv_list is already a pointer.
rewrite PVGV (ie PVBM) init for >= 5.10. (test 11)
Added CV->save_magic (untested)
Fixed two wrong my decelarations detected by the new Od debugger.
* README: Clarify DIFFERENCES section for CC only. Esp. the
Context of ".." section. New test 30
* t/TESTS, t/testc.sh, t/testplc.sh: test 30 added for Context of ".."
* t/testc.sh: fix -k logic, keep .pl for -O tests
1.06 2009-12-18 rurban
Going public on the Perl birthday
The first public compiler re-release since it was removed from CORE.
* C.pm: Had to disable -O1 -fcog (pv_copy_on_grow) on 5.10 and higher
until I find out how to fool S_unshare_hek_or_pvn. This fixes all C
-O1 and -O2 tests. Warn about this.
Fix wrong RV init on *5.10* for test 29 also, as with 5.11.
Simplify __DATA__ handling. Warn when -O3 or -fsava-data is missing.
Enable working -fsava-data on 5.8 and 5.10 threaded. Fixes couple of tests 15.
Fix 5.8/5.10 PVMG pv = &PL_sv_undef for empty comppadnames
* t/testc.sh: -k keep added. Delete temporaries on PASS as new default.
-E added. Dump preprocessed source file with cc -E as _E.c (was default before)
* Version bump to official:
B::C 1.06 (1.05 is in 5.8.9)
B::CC 1.01
B::Bytecode 1.03
B::Asmdata 1.03
B::Assembler 0.09
B::Disassembler 1.06
B::Bblock 1.03
ByteLoader 0.07
1.04_33 2009-12-17 rurban
* t/cc*.t: skip some memory eating failing tests.
* MANIFEST: dummy lib/B/Asmdata.pm added to fix cpan smokes on BSD.
Thanks to Slaven Rezic.
* C.pm: fix tests 14,16,23 on >=5.10, missing AV magic for
CV main::a, protect PVMG from SvPAD_OUR.
fix wrong RV init on 5.11 for test 29
* CC.pm: fix ARGS >=5.10 (in require, test 28).
Enable quiet. No -q for quiet, just -v (verbose) or any -D switch turns
on verbose.
* t/testc.sh: Added test 27 (import), test 28 (require), test 29 (use)
[Nick Koston]
1.04_32 2009-12-14 rurban
Only two 5.10 B::C bugs remaining!
* C.pm: added missing FBM logic to GV >= 5.10 (test 11).
Forbid MAGIC on non-magival SVs >= 5.10 (tests 14 + 23).
Special PVMG PL_sv_undef string. (namesv problem on 10,14,23)
1.04_31 2009-12-14 rurban
* C.pm: fix test 21 on 5.10 "Bad free() ignored". Dynamically
allocate CopLABEL.
* Makefile.PL: fix the make depend section > 5.9
* t/testc.sh: fix -D option
1.04_30 2009-12-13 rurban
Better 5.6 support, but Bytecode compiler still disabled.
Not even the Byteloader works for 5.6 assembled code. The Disassembler
does not stop at ret. Fixed several C tests.
* bytecode.pl: renumbering policy: <= 5.6 squeeze, >= 5.8 fixed
to force exact bytecode numbering as with 5.8.
Allow float versions, such as 10.001 for subreleases.
Add perlversion to header.
Add byteorder check logic.
Added logic to include all possible unsupported ops, all holes.
bytecode table checked for 5.6.1, 5.6.2, 5.8.0, 5.8.1-5.11
Note, that I found official and contradicting 5.6.1 releases.
ActiveState 5.6.1.626 had no op_children, the unix release tarball
with 5.6.1 (called Trial 1) still has it.
* ByteLoader.pm (1.06_06): better bytecode numbering.
* Asmdata.pm (1.02_02): strict numbering along 5.8.
Unsupported ops are now also included, with PUT method 0.
* Assembler.pm (0.07_07): Add perlversion to header
* Disassembler.pm (1.05_04): Add perlversion to header.
Print header only for existing.
* BcVersions/Asm*.pm, BcVersions.pod: added for most versions with the
CORE compiler.
* disassemble: Make it work with the older Disassembler.
Make it work with older bytecode >= 5.8 via Asmdata unsupported ops.
* i386.xs, jitcompiler.pl: removed (seperate module)
* bytecode.h, C.xs: Fixed for 5.6, tested with 5.6.1 with MSVC.
* bytecode.h, byterun.c: add static int force = 0. Override it to 1 to
try out executing older bytecodes.
* C.pm: fix test 16 on 5.10 again, non-threaded only (GVAV magic).
first fix in 1.04_24, broken in 1.04_28. On 5.11 I have a broken
RV handling here.
Remove version and Regexp::DESTROY from the automatic methods
(experimental).
First attempts with pv and hek consting failed.
* t/testc.sh, t/testplc.sh: support proper cmdline arguments, add -h for
help
Fixed test 5 by fixing the wrong test.
* perloptree.pod: renamed from perloptreeguts.pod. Added links.
1.04_29 2009-12-07 rurban
Disable the Bytecode compiler for 5.6. Fixed besides the __DATA__ handle
(test 15) all remaining 5.8 C bugs.
* C.pm: assign the PVX of GV also for empty stashes (main::) to avoid
destruction failures at Perl_pad_undef() SvPVX_const(namesv) == '&'.
Fixes tests 14 and 23
* byterun.c: No assert on empty bs_sv, it is &PL_sv_undef.
Map missing -Dv on 5.6 to -Df i.e. -D256
Added better debugging output: setter values.
* STATUS: re-run CORE tests, list cmdlines, update status
* Disassembler.pm: added gen_header_hash() for gen_header output.
add to documentation.
* Bytecode.pm: -S uses gen_header_hash for gen_header output.
1.04_28 2009-12-06 rurban
* C.pm: fix -fcog (Copy on Grow with -O1 and -O2) for >= 5.10 by a new
SVPV.
Statically initialize PVs with a union layout trick. Use char* as first
union member.
Revert xpvcv+svsect changes to pre-initialize those structs against
gvcv recursion.
* t/b.t, t/o.t, t/stash.t: fix tests for 5.6.2
* bytecode.c: byteorder swab only if same length.
1234 => 4321, 12345678 => 87654321.
Skip a 0x prefix for byteorder in the header. Perl 5.6 had this.
* Assembler.pm (0.07_06): 5.6 byteorder fix: until 5.6 the
$Config{byteorder} was falsely dependent on ivsize, we need longsize.
Add 0x to byteorder in header again, as with 5.6.
* t/testc.sh: do not run old leftovers. some 5.6 optimizations
* t/c_o1.t, t/c_o2.t, t/cc_o2.t, t/cc_o2.t: added
* t/test.pl: support -O1 and -O2
* broke ByteLoader
1.04_27 2009-12-04 rurban
* CC.pm (1.02_03): fixed endless loop in optimized sort. The sortcv
cmp needed a return NULL (test 19).
* c.t, cc.t: add failing tests as TODOs
1.04_26 2009-12-02 rurban
* C.pm: remove nv->IVX for 5.10 (Can't locate object method "IVX" via
package "B::NV").
protect mg->OBJ when SCALAR (Can't call method "save" on unblessed
reference).
fix NV isa IV, to fix test 23 (Nick Koston).
fix CopLABEL for 5.11 (test 21)
fix PMOP extflags, esp. for split on >= 5.10 (test 5 + 7)
add fbm_compile() to BM::save >= 5.8 (test 11) (Nick Koston)
* t/c.t, t/testc.sh: added tests 23, 24 (Nick Koston)
* Bytecode.pm (1.02_04), bytecode.h: store and set PMOP reflags
as U32. Fixes tests 2-4,7
Start of backporting Perl 5.6
1.04_25 2009-11-30 rurban
* C.pm: fixed IO for 5.11: LINES => IVX.
specialize GvLINES = -1 and protect against U32 signed-ness.
fixed test 8 main::AUTOLOAD (unoptimized only)
* t/test.pl: enable -Mblib for all Perl versions.
fix 5.6.2 ldopts by explicit checking of (-lperl|CORE\/libperl5).
make test works now for 5.6.2
* t/cc.t: adapt TODOs
* t/c.t: add TODOs 15 for 5.6
* script/perlcc: a.exe for cygwin also
1.04_24 2009-11-29 rurban
* C.pm: fixed more CV basics (test 9), just stash for autoload missing
(test 8).
PVLV adjusted, but no testcase yet.
IO adjusted. Fixes test 4.
re-enabled Perl 5.6, all tests but 8,15 pass with t/testc.sh. make test not.
added option -DO, more OP info than with -Do.
added saving "main::" CVs. Fixes test 16.
Fixed PMOP op_pmreplroot for >= 5.10 (for SUBST). No test
* t/TESTS, t/testc.sh: added 20 for qr// bug in 5.10
* t/c.t: remove TODO status from tests 14-16
1.04_23 2009-11-22 rurban
* yapc_bratislava08.pod: title fix
* SIGNATURE: added
* C.pm: GvGP handling improved. added more sect comments.
added -u option "unused" not to print verbose debugging info
for unused subs.
Fixed CV XPVCVIX initialisation - off-by-one error, wrong CvFLAGS.
Fixes test 6.
* run perltidy -i=2
1.04_22 2009-11-16 rurban
* C.pm, CC.pm: fixed illegal pad in ASSERT_CURPAD_ACTIVE("pad_sv")
with DEBUGGING. Simply forgot to set PL_comppad
1.04_21 2009-11-07 rurban
* yapc_bratislava08.pod: added
* C.pm: fixed CALLREGCOMP >=5.10 by using dynamic newSVpvn as in ByteLoader
1.04_20 2008-06-25 rurban
* t/TESTS: numbered.
* t/TESTS: added sub FETCHSIZE to test 16. required now
* C.pm, CC.pm: change debug globals to hash.
* C.pm: Fix B::RV::save for 5.10
* CC.pm: 5.10 fixed GvSV to GvSVn (PERL_DONT_CREATE_GVSV), fix cc test 3+4 crash
* Artistic, Copying: added. Clarified perl license.
* Bytecode.pm: fixed IO=>PVNV problem in test 15.
* bytecode.pl, bytecode.h: rewrote gp_sv and gp_file setters
with x (special setters). Fixes unshare hek assert in test 15, and force
creation of GVSV.
* Assembler.pm 0.07_05: cygwin text-mount fixes with \r\n
* t/testplc.sh, t/testc.sh: require bash, accept testnumber args
* Asmdata.pm: fix PORTABILITY docs
* t/testc.sh: -Bdynamic: link to shared libperl
* cc_harness: simplify. fixed for -Bdynamic -E
1.04_19 2008-06-08 rurban
* CC.pm: CXt_LOOP check rewrite, use now CxTYPE_no_LOOP()
* CC.pm, t/*.t: useithreads, not usethreads
* bytecode.t, test.pl: TODO handling: do not print "ok 1 #"
* b.t: fixed skip logic, better skip message
* Bblock: fixed to work without B::Concise (5.6.2)
* C.xs: add PM_GETRE for 5.6.2 and earlier
* CC.pm: Fix PP_EVAL hack from 1.04_18
* Bytecode: fixed IO::SUBPROCESS error (test 15)
* cc_harness: check static libperl.a, else try dynamic. Support -E
* ByteLoader: support different byteorders (Disassembler not yet)
* ByteLoader, Assembler, bytecode.pl: add archflags to header, relax
platform strictness.
* t/stash.t fixed for 5.10
* Disassembler: added hashref return for get_header in scalar context.
* Bytecode: fixed compiler crash/assertions for GV without GP (test 11)
1.04_18 2008-06-04 rurban
* Fixed t/assembler.t on 5.6.2
* Added ByteLoader::unimport (from 5.6.2)
* ByteLoader: Fixed bytecode crashes for 5.10+5.11 in 2-5,7 by
removing PMf_COMPILETIME from op_pmflags. Reason: empty
check_substr in INTUIT. (6 still failing)
* ByteLoader: Fixes for 5.11 by using PM_SETRE (test 7 still failing)
* Bytecode: removed op_reflags. pregcomp with op_pmflags alone
is enough to reconstruct it.
* C,CC: enabled static_ext + DynaLoader boot section again. Fixed in
cygperl.
* CC: fixed Bug#55302 PP_EVAL by adding PP_EVAL_thr for threaded perl.
cc_runtime.h was always wrong on this!
1.04_17 2008-04-20 rurban
Added Fedora Core 1 as test system (5.6.2, 5.8.3, 5.11.0@33708 + valgrind)
* ByteLoader: Fixed broken BYTEORDER check (for 32int)
* ByteLoader: Remove allowing older versions until we have
an opcode table for older versions.
* ByteLoader: Fixed SIGSEGV with older gcc (3.3.2) at
bstate->bs_obj_list[0] = NULL
* ByteLoader, C.xs: Newx() support and more for older perl's.
Tested with 5.8.3
* bytecode.pl: Fixed <11 op_reflags (double definition)
* bytecode.pl: Support 8-10 version syntax (op_pmstash, cop_io)
* Makefile.PL: added MKPATH blib/bin
* added ByteLoader/ppport.h
* fixed t/stash.t for 5.11
1.04_16 2008-04-14 rurban
* ByteLoader: Fix PL_tokenbuf for older perls without PL_parser
* B::C: walkoptree_slow for verbose statistics op_count.
* Consistent in -v verbose and not verbose.
* Workaround for invalid pad in save_context.
* Added -Dp for verbose package cache printing.
* -v verbose adds more generated comments: op struct fields
* Fixed cop_label for 5.11 (Change #33656)
* Fixed make subdirs-test error in 5.8.8
* Fixed RT#52920 "invalid cop_free of nullified cop" for B::C
1.04_15 2008-04-11 rurban
Highlights: bytecode and ByteLoader portability preparation and
commented disassembler output. PVGV and new REGEX still broken.
Fixes for no ithreads.
* Fixed verbose Bytecode for old B::Concise (5.8.8). t/testplc.sh
failed before.
* ByteLoader: Work on portability (different arch, version and sizes).
Added bl_header.
Changed macro BYTECODE_HEADER_CHECK to function bytecode_header_check().
Fixes for no threads.
* bytecode.h: pregcomp fix for 5.10 w/o threads
(Thanks to david@cantrell.org.uk for his cpantest for netbsd).
use xpv_cur and not xpv_len for the rx length (len - 1) to strip off
the ending nul byte.
5.10: new minlen check aborts
* ByteLoader security: added strconst maxsize flag to bytecode.pl
for buffer overflow checks.
* Bytecode -DA for devel assertions of absolute or probably wrong opindex
pointers (nyi)
* disassemble, B::Assembler: commented output, similar to -MO=Bytecode,-S
Added backwards option --bare for older assemblers.
* assemble, disassemble: added pod
* B::Disassembler:
Provide default printers print_insn (commented) and print_insn_bare.
Portability: Use the header settings from the .plc and not the current
perl settings.
* B::Assembler 0.07_03, B::Disassembler 1.05_02, ByteLoader 0.06_03:
Added longsize to the bytecode header, just for xcv_depth.
* B::Debug 1.05_03: Fixes for no threads.
* Makefile.PL: Fixed script/perlcc.PL dependency
make: *** No rule to make target `script/perlcc', needed by
`blib/bin/perlcc'.
(Thanks to david@cantrell.org.uk for his cpantest for solaris)
* Added test TODO's, Added perloptreeguts.pod
1.04_14 2008-03-24 rurban
* Fixed some 1.04_13 +x executable permissions in docs. Windows habits.
1.04_13 2008-03-24 rurban
* Fixed B::C pv init in 5.10. Forgot refcnt and flags.
* Added "Other perl to exe compilers" section to perlcompile.pod.
This is even a FAQ.
* Added the NOTES to perlcompile.pod
* Added temp. perloptreeguts.pod. In work, also at the wiki.
* Fixed Bytecode op_pmflags assertions.
* Added orangesect for enough regexp space in RE's sv_any.
Engine not initialized though.
* Hangs in C/CC executables at an op_free(PL_main_root) trying to free
the static op structs because the earlier op_seq -1 hack is gone now,
and opt_static was replaced by opt_latefree. Set now opt_latefree = 1.
This fixed tests 1 and 13. Slowly making progress step by step.
1.04_12 2008-03-16 rurban (first upload)
* Fixed bug #40435 CC: Can't locate object method "_save_common_middle"
via package "B::FAKEOP"
* move tests from [bc]*.t into shared TESTS file.
* fixed remaining ugly Bytecode bug in B::AV::bsave
$_ = $_->ix for @array.
Now we are at the same state as with 5.9.4
* fixed wrong bc cop_warning cast for 5.8
* fixed CC pmreplroot and pmreplstart fields
* make C and CC less verbose, honor -v, -q ignored.
1.04_11 2008-03-09 rurban
* removed Jit and Asm stuff. Maybe as seperate packages somewhen.
But targeting PIR makes more sense.
* added STATUS
* added old Changes from the new git clone repo by Sam Vilain
* fix C cop
* fix C savepvn apparently
* work on HV init - crashes at invalid entry
* use run_cc_test
1.04_10 2008-02-26 rurban
* change bc pvx access
dummy struct bytestate_xpv, so pv has the same fields as with 5.8,
seperated from the sv. The sv is seperated from the pv.
TODO: different strategy for B::C, must link xpv to sv
* add and parse Assembler comments
* add Bytecode comments to -S output unless -q
* change op_reflags from U16 to U32
* guarantee ByteLoader backwards compatibility: Accept lower versions also.
1.04_09 2008-02-25 rurban
* restored 5.8 backwards compatibility, mainly for test comparison.
CPAN installation will abort.
* make t/test*.sh PERL independent
* fixed B::C GV init crashes (SvPOK assertion)
* added B::C RE section
* fixed B::C xpvcv and xpvnv section
* comment Bytecode -S nice ops to re-assemble them without errors
* added new asm opcode op_reflags
* removed Bytecode cop_arybase for 5.10
* 5.8 compatibility: fixed bytecode.pl versioning, Asmdata creation
(exact same for 5.8.8), asmdata.t, b.t tests
* improved make clean
* add ByteLoader -Dt and -Dv debugging
* don't link against jit code against possible sideeffects
* fixed c.t and cc.t tests
1.04_08 2008-02-22 rurban
* fixed t/b.t tests for 5.11 (REGEXP, ref RV => IV)
* fixed Makefile.PL deps to ignore the interim .pl files
* added PMOP reflags
* added madprop to B-1.18_01 and B::C (if provided by B)
* enhanced B::Debug 1.05_02
* fixed B::C PL_cshlen (already initialized since 5.10)
* fixed B::C GvFILE
* fixed various (SV)xpv list casts and inits,
* fixed B::C xpvnv_list for 5.10
* fixed B::C xpvio_list for 5.10
* fixed B::C pmopsect for 5.11
* bootstrap also all $Config{static_ext}, not only dynamic stashes
1.04_07 2008-02-20 rurban
* moved bstate->bs_pv.xpv_pv slot to bs_pv.xiv_u.xivu_p1
* fixed pv_free
* added op_pmflags 2 to match PMOP
* moved B into lib/B
* fixed ByteLoader Makefile deps
* added -DM flag to Bytecode backend
* added perlcompile.pod and Perl_5_Internals.htm
1.04_06 2008-02-19 rurban
* no crashes anymore for 5.10, just op_pmflags & PMf_ONCE assertions.
* blead@32980 crashes in tests 11,16,17,18
* enhanced B::Debug (no version bump)
* fixed general op_list inits, and specials for av, hv
* almost fixed pv within sv handling
* added -O=C,-DS for SV debugging
1.04_05 2008-02-18 rurban
* added t/test.pl and t/test*.sh to MANIFEST.
* fixed ByteLoader reading from the <DATA> filter.
* fixed -H .plc header parsing
* updated Bytecode options in NOTES and pod
* added -O=Bytecode,-v option
* fixed PL_preprocess and SvREPADTMP_off for 5.11
1.04_04 2008-02-08 rurban
* added jitcompiler macros
1.04_03 2008-02-05 rurban
* added Jit and Asm layout, fixed Makefile deps
1.04_02 2008-01-22 rurban (never uploaded)
* removed from CORE, now on CPAN.
* added byteorder to bytecode header.
* added support for 5.10 (NOT WORKING!), 5.9.5 not tested.
up to 5.8.x already in CORE, so disabled.
add back support later, when C/CC is improved or more features
are added.
* added type hekindex
* added c.t and cc.t tests
* extended bytecode.pl format: added version logic
to have strictly consecutive indices
1.04_01 2008-01-15 rurban (never uploaded)
* first package layout for all now non-CORE packages.
===================================================================
B::C was at 1.05 when removed from core with 5.9.4.
Nicholas Clark <nwc10+p5p4@colon.colondot.net> 2007-05-07 15:35:56
bytecode.pl: Exterminate!
ext/B/B/Asmdata.pm: Exterminate!
Nicholas Clark <nwc10+p5p4@colon.colondot.net> 2007-05-07 14:53:05
Given that @optype and @specialsv_name are hard coded tables, it seems
more logical for them to be in B.pm, rather than in the "boilerplate"
for the machine generated B/Asmdata.pm
Marcus Holland-Moritz <mhx-perl@gmx.net> 2004-08-29 13:22:48
Fix typo in B::Assembler.
Marcus Holland-Moritz <mhx-perl@gmx.net> 2004-08-29 13:21:50
Skip ext/B/t/assembler.t when configured without B.
Rafael Garcia-Suarez <rgarciasuarez@gmail.com> 2003-08-09 21:13:27
Remove ByteLoader from the list of modules whose compilability should
be tested : it's loaded (at runtime) by ext/B/t/bytecode.t (as Enache
pointed out.)
chromatic <chromatic@rmci.net> 2002-05-10 07:43:25
added ext/B/t/o.t
Gurusamy Sarathy <gsar@cpan.org> 2001-03-19 08:07:09
Subject: Re: sync sync sync: have I missed any patches?
Replace djSP with dSP.
Mark-Jason Dominus <mjd@plover.com> 2001-01-16 14:43:18
Subject: [PATCH @8436] Eliminate op_children
(Replaced by #8448) Traces of op_children (cleanup of #8442)
(Replaced by #8448) More op_children traces (cleanup of #8442).
Subject: [PATCH #3 @8436] Re: Eliminate op_children
Replace #8444 and #8445.
Gurusamy Sarathy <gsar@cpan.org> 2001-01-30 14:20:24
integrate changes#7984,7987,8010 from mainline (gets rid of
dTHR which has been a noop for a while now, except for the
compatibility definition in thread.h)
@8010 remove dTHR;
Gurusamy Sarathy <gsar@cpan.org> 2000-12-18 03:37:02
@7518 UNIVERSAL::can
Gurusamy Sarathy <gsar@cpan.org> 2000-12-18 00:03:38
Fix a couple of compiler-noted nits in #7235.
Fix of sorts for bug id 20000901.092. There seems to be no trace
of a 'pmshort' anywhere in the B, so the offending line was simply
removed.
Gurusamy Sarathy <gsar@cpan.org> 2000-12-17 22:49:13
Subject: [ID 20000928.002] perlcc & ByteCode.pm option mismatch
Did not apply cleanly, manual intervention was needed.
Subject: [ID 20001003.006] B::Debug not -w clean
Test harness update to sync with the new perlcc,
from Simon Cozens.
Gurusamy Sarathy <gsar@cpan.org> 2000-11-27 18:11:21
Bytecompiler patches from Benjamin Stuhl.
More bytecompiler.
Subject: [PATCH blead] B:: missing dependency
Byteloader 0.04
Gurusamy Sarathy <gsar@cpan.org> 2000-11-27 13:53:18
U8->U16 CvFLAGS(cv)
Jarkko Hietaniemi <jhi@iki.fi> 2001-10-25 18:07:58
* make re, Opcode, File::Glob and B threadsafe
* include XS_VERSION in MY_CXT_KEY (tweak for change#12652)
Jarkko Hietaniemi <jhi@iki.fi> 2001-04-05 04:00:33
Integrate changes #9544,9547,9549(perlio),9550,9551 from
maintperl into mainline.
"double" should be "NV"; standard typemap is missing entry
for NV
Author: bailey <bailey@bailey_vms> 2000-02-09 09:09:45
Resync with mainline
bailey <bailey@bailey_vms> 2000-01-20 00:25:30
Quick integration of mainline changes to date
Nathan Torkington <gnat@frii.com> 1999-08-01 11:23:35
ext/B/B/Disassembler.pm patch
Message-ID: <14244.33431.739419.806927@localhost.frii.com>
Nick Ing-Simmons <nick@ing-simmons.net> 1999-01-02 14:06:30
Export constant subs from B.xs for op.h, cop.h and a few others.
Use them in various B::* rather than have local defs.
Nick Ing-Simmons <nick@ing-simmons.net> 1999-01-02 10:04:02
Integrate ext/B changes from //depot/cfgperl
'copy in' ext/B/B.xs
(@2460..) 'merge in' ext/B/B/C.pm ext/B/B/CC.pm
ext/B/B/Stackobj.pm (@2524..)
Nick Ing-Simmons <nick@ing-simmons.net> 1999-01-02 10:04:02
@2491 Integrate ext/B changes from //depot/cfgperl
Gurusamy Sarathy <gsar@cpan.org> 1998-09-23 09:52:46
B::Asmdata define PUT_svindex(), PUT_opindex()
Nick Ing-Simmons <nick@ing-simmons.net> 1998-12-20 14:21:29
Save _all_ GV's which have SV, AV or HV set.
Gurusamy Sarathy <gsar@cpan.org> 1998-08-02 07:09:35
fixes for pod noises
Gurusamy Sarathy <gsar@cpan.org> 1998-07-22 02:08:00
fix up B modules for PL_* changes
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-07-21 18:13:16
Compiler docs for 5.005
Message-Id: <199807211713.SAA20735@sable.ox.ac.uk>
Gurusamy Sarathy <gsar@cpan.org> 1998-07-22 01:29:09
s/PL_sv/PL_bytecode_sv/ etc., so we have unique, case-insensitive
names
Gurusamy Sarathy <gsar@cpan.org> 1998-07-21 07:12:00
fix bytecode.pl with moved var names
Gurusamy Sarathy <gsar@cpan.org> 1998-07-21 05:31:13
part 2 of PERL_OBJECT fixes (globals in bytecode.h moved to intrpvar.h)
Gurusamy Sarathy <gsar@cpan.org> 1998-07-21 05:29:10
part 1 of PERL_OBJECT fixes for new var names
Gurusamy Sarathy <gsar@cpan.org> 1998-07-20 09:38:39
complete s/foo/PL_foo/ changes (all escaped cases identified with
brute force search script). Result builds and passes all tests on
Solaris. win32 and PERL_OBJECT are still untested.
Nick Ing-Simmons <nick@ing-simmons.net> 1998-07-18 13:53:03
PL_ prefix to all perlvars, part1
Builds and passes all tests at one limit i.e. -DPERL_GLOBAL_STRUCT
Ilya Zakharevich <ilya@math.ohio-state.edu> 1998-07-15 06:10:36
Minor improvements to perlcc
Message-Id: <199807151010.GAA11270@monk.mps.ohio-state.edu>
Gurusamy Sarathy <gsar@cpan.org> 1998-07-15 10:01:41
add stub docs for ext/B, other minor tweaks
Gurusamy Sarathy <gsar@cpan.org> 1998-07-09 05:37:48
get it building again on win32
Gurusamy Sarathy <gsar@cpan.org> 1998-07-04 05:02:01
fix perlcc to not rm output file, and other -w(arts)
Stephen McCamant <alias@mcs.com> 1998-06-22 21:19:43
Inheritance of B:: classes
Message-Id: <m0yoIgR-000EP2C@alias-2.pr.mcs.net>
Gurusamy Sarathy <gsar@cpan.org> 1998-06-19 17:22:23
update repository copy of Asmdata.pm after `perl bytecode.pl`
Gurusamy Sarathy <gsar@cpan.org> 1998-06-11 02:59:23
fix outdated bytecode.pl
Nick Ing-Simmons <nick@ing-simmons.net> 1998-05-14 18:09:01
Changes to allow compiler with gcc-2.8.1 in C++ mode,
Remove K&R style functions, avoid struct/typedef clash.
Ed Peschko <epeschko@den-mdev1> 1998-04-29 21:02:36
[ PATCH 5.004_64 ] Integrated regression tests for compiler
added perlcc.PL
Ilya Zakharevich <ilya@math.ohio-state.edu> 1998-04-08 03:21:03
Subject: [PATCH 5.004_64] Cryptic error from B::CC
Date: Sat, 11 Apr 1998 19:52:25 -0400 (EDT)
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-04-14 16:22:51
[compiler] CC did "<<" instead of ">>" for right-shift on ints.
Charles Bailey <bailey@newman.upenn.edu> 1998-03-02 01:48:27
Miscellaneous minor fixes
Spider Boardman <spider@orb.nashua.nh.us> 1998-03-01 02:02:47
Almost OK: 5.004_61 (threads, perlio)
Andrew Cohen <cohen@andy.bu.edu> 1998-02-27 20:03:29
Change getc/fread to PerlIO_getc/fread in bytecode.h:
Subject: [PATCH 5.004_61] bunch of small patches
Nick Ing-Simmons <nick@ing-simmons.net> 1998-02-28 11:31:15
Missed FREAD in bytecode.h
Cannot export svref_mutex in non-threaded perl
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-27 18:35:27
Change FREAD/FGETC to BGET_FREAD/BGET_FGETC to avoid clash with
preprocessor symbol on Digital UNIX.
Gurusamy Sarathy <gsar@cpan.org> 1998-02-26 03:56:19
[win32] various cleanups so that B can be built as "just another extension"
- export symbols needed for building B
- bset_obj_store() is needed by byterun(), so define it there instead
of at B.xs, and export it
- freadpv() is only used in B.xs, so move it there
- byte*.h are now included by perl.h
- regenerate embed*.h
Gurusamy Sarathy <gsar@cpan.org> 1998-02-22 02:40:56
[win32] get compiler building under win32 (needed Makefile.PL
hacks that could be applicable to other platforms)
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-25 17:44:34
More compiler tweaks.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-20 18:23:47
Remove compiler files from their old lib/B locations. The compiler
now builds by default (without the byteperl executable so far) and
seems to work at least minimally.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-20 18:05:33
Move lib/B/... and lib/[BO].pm over to where they should be,
under ext/B.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-20 17:54:58
Start getting compiler to work when built with the core.
[Still won't work as of this change.]
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-20 16:42:13
* Merge perlext/Compiler/... into mainline. Some files move to
ext/B/..., some to lib/B/..., O.pm and B.pm go in lib and some
move to the base perl directory (e.g. headers). Will need some
cleaning up before it builds properly, I would guess.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-20 16:39:38
* [compiler] Win32 changes from Sarathy, tweaked slightly by me.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1998-02-17 17:50:50
* Assorted changes to the compiler
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-12-17 10:59:40
* Fix typo in compiler B/C.pm.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-12-10 18:33:53
Alpha5
* Start overhauling compiler. It was working at least minimally
right up until the final tweak of B.xs to add threadsv_names
at which point building it provokes a seg fault in perl while
doing the xsubpp :-(.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-09-03 12:31:48
* Make compiler build/work with devel 5.005
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-07-05 11:58:05
* Change %lx to %x in B::CV::save to prevent some CV
fields becoming 0 in the init section. Add missing
write_back in B::Stackobj::Padsv::load_double to fix
test 22 of op/my.t.
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-07-05 11:58:05
* B::CC::pp_padsv must cope with vivify_ref (5.004)
as well as provide_ref (5.003)
Malcolm Beattie <mbeattie@sable.ox.ac.uk> 1997-05-03 14:47:06
Alpha 4
* initial check in of compiler
from version Alpha a3 to a4