OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [libjava/] [NEWS] - Blame information for rev 14

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 14 jlechner
*** Changes in GCC 4.1:
2
 
3
Core library (libgcj) updates based on GNU Classpath 0.15 - 0.19+
4
 
5
- Networking
6
 
7
* The java.net.HttpURLConnection implementation no longer buffers the
8
  entire response body in memory.  This means that response bodies
9
  larger than available memory can now be handled.
10
 
11
- (N)IO
12
 
13
* NIO FileChannel.map implementation, fast bulk put implementation for
14
  DirectByteBuffer (speeds up this method 10x).
15
 
16
* FileChannel.lock() and FileChannel.force() implemented.
17
 
18
- XML
19
 
20
* gnu.xml fix for nodes created outside a namespace context.
21
 
22
* Add support for output indenting and cdata-section-elements output
23
  instruction in xml.transform.
24
 
25
* xml.xpath corrections for cases where elements/attributes might have
26
  been created in non-namespace-aware mode. Corrections to handling of
27
  XSL variables and minor conformance updates.
28
 
29
- AWT
30
 
31
* Qt4 configury switches for OS-X. Additional to the --enable-qt-peer, OS-X
32
  users with a Qt4 installation can build the qt-peers with the argument
33
  --with-qt4dir=.
34
 
35
* GNU JAWT implementation, the AWT Native Interface, which allows direct
36
  access to native screen resources from within a Canvas's paint method.
37
  GNU Classpath Examples comes with a Demo,
38
  see libjava/classpath/examples/README.
39
 
40
* awt.datatransfer updated to 1.5 with supports for FlavorEvents.
41
  The gtk+ awt peers now allow copy/paste of text, images, uris/files
42
  and serialized objects with other applications and tracking
43
  clipboard change events with gtk+ 2.6 (for gtk+ 2.4 only text and
44
  serialized objects are supported). A GNU Classpath Examples
45
  datatransfer Demo was added to show the new functionality.
46
 
47
* Split gtk+ awt peers event handling in two threads and improve gdk lock
48
  handling (solves several AWT lock ups).
49
 
50
* Speed up awt Image loading.
51
 
52
* Better GTK scrollbar peer implementation when using GTK >= 2.6.
53
 
54
* Handle image loading errors correctly for gdkpixbuf and MediaTracker.
55
 
56
* Better handle GDK lock. Properly prefix gtkpeer native functions (cp_gtk).
57
 
58
* GdkGraphics2D has been updated to use Cairo 0.5.x APIs.
59
 
60
* BufferedImage and GtkImage rewrites. All image drawing operations
61
  should now work correctly (flipping requires gtk+ >= 2.6)
62
 
63
* Future Graphics2D, Image and Text work is documented at:
64
  http://developer.classpath.org/mediation/ClasspathGraphicsImagesText
65
 
66
* When gtk+ 2.6 or higher is installed the default log handler will produce
67
  stack traces whenever a WARNING, CRITICAL or ERROR message is produced.
68
 
69
- Free Swing
70
 
71
* The Swing RepaintManager has been reworked for more efficient painting,
72
  especially for large GUIs.
73
 
74
* The Swing layout manager OverlayLayout has been implemented, the BoxLayout
75
  has been rewritten to make use of the SizeRequirements utility class and
76
  caching for more efficient layout.
77
 
78
* Improved accessibility support for Swing.
79
 
80
* Significant progress has been made in the implementation of the
81
  javax.swing.plaf.metal.* package, with most UI delegates in a working state
82
  now.  Please test this with your own applications and provide feedback that
83
  will help us to improve this package.
84
 
85
* The GUI demo (gnu.classpath.examples.swing.Demo) has been extended to
86
  highlight various features in our free-swing implementation. And includes
87
  a look and feel switcher (Metal default, Ocean or GNU).
88
 
89
* The javax.swing.plaf.multi.* package is now implemented.
90
 
91
* Editing and several key actions for JTree and JTable were implemented.
92
 
93
* Lots of icons and look and feel improvements for Free Swing basic and
94
  metal themes were added.  Try running the GNU Classpath Swing Demo in
95
  examples (gnu.classpath.examples.swing.Demo) with:
96
  -Dswing.defaultlaf=javax.swing.plaf.basic.BasicLookAndFeel
97
  -Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
98
 
99
* Start of styled text capabilites for java.swing.text.
100
 
101
* DefaultMutableTreeNode preorder, postorder, depthFirst and breadthFirst
102
  traversal enumerations implemented.
103
 
104
* JInternalFrame colors and titlebar draw properly.
105
 
106
* JTree is working up to par (icons, selection and keyboard traversal).
107
 
108
* JMenus were made more compatible in visual and programmatic behavior.
109
 
110
* JTable changeSelection and multiple selections implemented.
111
 
112
* JButton and JToggleButton change states work properly now.
113
 
114
* JFileChooser fixes.
115
 
116
* revalidate and repaint fixes which make Free Swing much more responsive.
117
 
118
* MetalIconFactory implemented.
119
 
120
* Free Swing Top-Level Compatibility. JFrame, JDialog, JApplet,
121
  JInternalFrame, and JWindow are now 1.5 compatible in the sense that you
122
  can call add() and setLayout() directly on them, which will have the same
123
  effect as calling getContentPane().add() and getContentPane().setLayout().
124
 
125
* The JTree interface has been completed. JTrees now recognizes mouse clicks
126
  and selections work, but the visual implementation is not yet complete.
127
  Work on expansion and collapsing of the tree nodes is being implemented.
128
 
129
* BoxLayout works properly now.
130
 
131
* Fixed GrayFilter to actually work.
132
 
133
* Metal SplitPane implemented.
134
 
135
* Lots of free swing text and editor stuff work now.
136
 
137
- Free RMI and Corba
138
 
139
* The Andrew Watson, Vice President and Technical Director of the Object
140
  Management Group, has officially assigned us 20 bit Vendor Minor Code Id:
141
  0x47430 ("GC") that will mark remote Classpath - specific system exceptions.
142
  Obtaining the VMCID means that GNU Classpath now is a recogniseable type of
143
  node in a highly interoperable CORBA world.
144
 
145
* Classpath now includes the first working draft to support the RMI over
146
  IIOP protocol. The current implementation is capable for remote invocations,
147
  transferring various Serializables and Externalizables via RMI-IIOP protocol.
148
  It can flatten graphs and, at least for the simple cases, is interoperable
149
  with Sun's jdk 1.5.
150
 
151
* org.omg.PortableInterceptor and related functionality in other packages
152
  is now implemented:
153
    - The sever and client interceptors work as required since 1.4.
154
    - The IOR interceptor works as needed for 1.5.
155
 
156
* The org.omg.DynamicAny package is completed and passes the prepared tests.
157
 
158
* The Portable Object Adapter should now support the output of the
159
  recent IDL to java compilers. These compilers now generate servants and
160
  not CORBA objects as before, making the output depended on the existing
161
  POA implementation. Completing POA means that such code can already be
162
  tried to run on Classpath. Our POA is tested for the following usager
163
  scenarios:
164
    - POA converts servant to the CORBA object.
165
    - Servant provides to the CORBA object.
166
    - POA activates new CORBA object with the given Object Id (byte array)
167
      that is later accessible for the servant.
168
    - During the first call, the ServantActivator provides servant for this
169
      and all subsequent calls on the current object.
170
    - During each call, the ServantLocator provides servant for this call
171
      only.
172
    - ServantLocator or ServantActivator forwards call to another server.
173
    - POA has a single servant, responsible for all objects.
174
    - POA has a default servant, but some objects are explicitly connected
175
      to they specific servants.
176
  The POA is verified using tests from the former cost.omg.org.
177
 
178
* The CORBA implementation is now a working prototype that should support
179
  features up till 1.3 inclusive.
180
  We would invite groups writing CORBA dependent applications to
181
  try Classpath implementation, reporting any possible bugs.
182
 
183
  The CORBA prototype is interoperable with Sun's implementation v 1.4,
184
  transferring object references, primitive types, narrow and wide
185
  strings, arrays, structures, trees, abstract interfaces and
186
  value types (feature of CORBA 2.3) between these two platforms.
187
  The remote exceptions are transferred and handled correctly.
188
  The stringified object references (IORs) from various sources are
189
  parsed as required.
190
  The transient (for current session) and permanent (till jre restart)
191
  redirections work.
192
  Both Little and Big Endian encoded messages are accepted.
193
  The implementation is verified using tests from the former cost.omg.org.
194
  The current release includes working examples (see the examples directory),
195
  demonstrating the client-server communication, using either CORBA Request
196
  or IDL-based  stub (usually generated by a IDL to java compiler).
197
  These examples also show how to use the Classpath CORBA naming service.
198
  The IDL to java compiler is not yet written, but as our library must be
199
  compatible, it naturally accepts the output of other idlj implementations.
200
 
201
- Misc
202
 
203
* Updated TimeZone data against Olson tzdata2005l.
204
 
205
* Make zip and jar UTF-8 "clean".
206
 
207
* "native" code builds and compiles (warning free) on Darwin and Solaris.
208
 
209
* java.util.logging.FileHandler now rotates files.
210
 
211
* Start of a generic JDWP framework in gnu/classpath/jdwp.
212
  This is unfinished, but feedback (at classpath@gnu.org) from runtime
213
  hackers is greatly appreciated. Although most of the work is currently
214
  being done around gcj/gij we want this framework to be as VM neutral as
215
  possible. Early design is described in:
216
  http://gcc.gnu.org/ml/java/2005-05/msg00260.html
217
 
218
* QT4 AWT peers, enable by giving configure --enable-qt-peer.
219
  Included, but not ready for production yet. They are explicitly
220
  disabled and not supported. But if you want to help with the
221
  development of these new features we are interested in feedback. You
222
  will have to explicitly enable them to try them out
223
  (and they will most likely contain bugs).
224
 
225
* Documentation fixes all over the place.
226
  See http://developer.classpath.org/doc/
227
 
228
Thanks! The following people helped with the above new features, bug
229
reports, testing and integration:
230
 
231
Aaron Luchko (JDWP updates and documentation fixes) Andreas Jaeger
232
(mprec updates) Andreas Tobler (Darwin and Solaris testing and fixing,
233
Qt4 support for Darwin/OSX, Graphics2D support, gtk+ updates.)  Andrew
234
Haley (Serialization and URLClassLoader fixes, gcj build speedups)
235
Andrew John Hughes (Locale and net fixes, URI RFC2986 updates,
236
Serialization fixes, Properties XML support and generic branch work,
237
VMIntegration guide update) Andrew Overholt (File locking) Anthony
238
Balkissoon (JList, Free Swing 1.5 updates and mouse event fixes, Lots
239
of Free Swing work including JTable editing) Anthony Green (MIDI
240
framework, ALSA and DSSI providers) Archie Cobbs (Build fixes, VM
241
interface updates, URLClassLoader updates) Audrius Meskauskas (Lots of
242
Free Corba, RMI and HTML work plus testing and documenting) Bastiaan
243
Huisman (TimeZone bug fixing) Bryce McKinlay (RMI work) Casey Marshall
244
(Crypto algorithm fixes, FileChannel lock, SystemLogger and
245
FileHandler rotate impl, NIO FileChannel.map support, security and
246
policy updates) Chris Burdess (Lots of gnu.xml and http protocol
247
fixes, StAX and dom xml:id support) Christian Schlichtherle (Zip fixes
248
and cleanups) Christian Thalinger (64-bit cleanups, Configuration and
249
VM interface fixes and CACAO integration, fdlibm updates) Dalibor
250
Topic (Better DEBUG support, Build cleanups and Kaffe integration. Qt4
251
build infrastructure, SHA1PRNG and GdkPixbugDecoder updates) Daniel
252
Bonniot (Serialization fixes) David Daney (BitSet bugfixes,
253
HttpURLConnection rewrite and improvements) David Gilbert (Basic and
254
Metal icon and plaf and lots of documenting, Lots of Free Swing and
255
metal theme additions. MetalIconFactory implementation) David
256
Lichteblau (JCL support library global/local reference cleanups) Gael
257
Thomas (VMClassLoader boot packages support sugestions) Gary Benson
258
(MessageFormat fixes) Goffredo Baroncelli (HTTPURLConnection fixes)
259
Guilhem Lavaux (Configuration, thread and channel fixes and Kaffe
260
integration. JCL native Pointer updates. Logger bug fixes) Ingo
261
Proetel (Image, Logger and URLClassLoader updates) Ito Kazumitsu
262
(NetworkInterfaces implementation and updates) Jan Roehrich
263
(BasicTreeUI and JTree fixes) Jeroen Frijters (ClassLoader and nio
264
cleanups, Serialization fixes, better Proxy support, bug fixes and
265
IKVM integration) Julian Scheid (Documentation updates and gjdoc
266
support) Ka-Hing Cheung (TreePath and TreeSelection fixes) Kalle Olavi
267
Niemitalo (Build fixes) Keith Seitz (Lots of JDWP work) Kelley Cook
268
(Build fixes) Kim Ho (JFileChooser implementation) Lillian Angel
269
(JTree implementation and lots Free Swing additions and bug fixes)
270
Mark Wielaard (Bug fixes, packaging and release management, Clipboard
271
implementation, System call interrupts and network timeouts and
272
GdkPixpufDecoder fixes) Martin Cordova (Suggestions for better
273
SocketTimeoutException) Michael Koch (Configuration fixes. Locale
274
updates, bug and build fixes) Nicolas Geoffray (VMClassLoader and
275
AccessController improvements) Olga Rodimina (MenuSelectionManager)
276
Paul Jenner (Better -Werror support) Rainer Orth (Build fixes) Robert
277
Schuster (Documentation updates and beans fixes, TreeNode enumerations
278
and ActionCommand and various fixes, XML and URL, AWT and Free Swing
279
bug fixes) Roman Kennke (BoxLayout, GrayFilter and SplitPane, plus
280
bugfixes all over. Lots of Free Swing work including styled text)
281
Santiago Gala (AccessControlContext fixes) Simon Kitching (String
282
cleanups and optimization suggestions) Stuart Ballard (RMI constant
283
fixes) Sven de Marothy (BMP imageio support, CSS and TextLayout
284
fixes. GtkImage rewrite, 2D, awt, free swing and date/time fixes, Qt4
285
peers) Thomas Fitzsimmons (Lot of upgrades to the gtk+ AWT and cairo
286
2D support. Lots of imageio framework additions, lots of AWT and Free
287
Swing bug fixes) Tom Tromey (Eclipse integration, generics work, lots
288
of bug fixes and gcj integration including coordinating The Big Merge)
289
Wolfgang Baer (GapContent bug fixes) Ziga Mahkovec (Graphics2D
290
upgraded to cairo 0.5 and new regex features)
291
 
292
*** Changes in GCC 4.0:
293
 
294
* Character encoders and decoders have been added for: iso-8859-6
295
(arabic), iso-8859-7 (greek), iso-8859-8 (hebrew), iso-8859-9
296
(latin-5), iso-8859-13, iso-8859-15 (latin-9), cp1047 (ebcdic),
297
ebcdic-xml-us,ascii, windows-1250, windows-1252, UTF-16BE (Big Endian),
298
UTF-16LE (Little Endian), UTF-32BE (Big Endian), UTF-32LE (Little
299
Endian).
300
 
301
* Lots of Calendar bug fixes.
302
 
303
* The http url protocol handler has been replaced with a full HTTP/1.1
304
version from GNU inetlib.
305
 
306
* A new ftp url protocol handler has been added also from GNU inetlib.
307
 
308
* java.beans has been updated to 1.4 including support for XMLEncoder
309
and XMLDecoder.
310
 
311
* Added implementations of javax.xml (JAXP 1.3), org.xml.sax (SAX2)
312
and org.w3c.dom (DOM Level 3) interfaces. It is possible to switch
313
between different implementations AElfred2, GNU DOM, GNU XSL, libxmlj
314
SAX, libxmlj DOM and libxmlj XSL by setting different system
315
properties.  Also provided is a preliminary XPath 1.0
316
implementation. The libxmlj versions are build around libxml2 and
317
libxslt and have to be enabled during build time by the --enable-xmlj
318
configure flag. The current support is equal to the last released GNU
319
JAXP 1.3 release. These packages will be maintained as part of the GNU
320
Classpath core classes in the future. For more information,
321
conformance results and documentation on selecting different
322
implementations see doc/README.jaxp.
323
 
324
* Much fuller collection documentation.
325
 
326
* libgcj can now load service providers that are described via
327
META-INF/services/* resources in extension JARs. This is useful for
328
implementing the various APIs that are supposed to be extensible via
329
custom plugins. For details, please see the documentation of
330
gnu.classpath.ServiceFactory.
331
 
332
* GNU Classpath's JAR implementation now has preliminary support for
333
signed entries, for so called "signed JAR" file support. Signed JAR
334
files are one of the key security features of managed runtimes, and
335
allows code to run privileged given unforgeable proofs of identity.
336
 
337
* A much improved version of X.509 certificates has been added,
338
including a robust certificate path checking algorithm. Also included
339
is an implementation of the RSA signature scheme.
340
 
341
* New javax.crypto, javax.crypto.interfaces, javax.crypto.spec,
342
javax.net, javax.net.ssl, javax.security.auth,
343
javax.security.auth.callback, javax.security.auth.login,
344
javax.security.auth.x500, javax.security.sasl and org.ietf.jgss
345
packages are now officially part of GNU Classpath. Extra crypto
346
algorithms can be obtained from the GNU Crypto project, a full TLS
347
implementation is provided by the Jessie project.
348
http://www.gnu.org/software/gnu-crypto/
349
http://www.nongnu.org/jessie/
350
 
351
* java.security.AccessController has been implemented.
352
 
353
* The default java.lang.SecurityManager now uses AccessController.
354
 
355
* Lookahead support for regular expressions.
356
 
357
* java.util.regexp implementation through gnu.regexp wrappers.
358
 
359
* Serialization object stream fixes for multiple ClassLoader scenarios.
360
 
361
* java.net.URL now uses application classloader to load
362
URLStreamHandlers and reuses URLStreamHandlers when URL is reset (but
363
protocol isn't changed).
364
 
365
* java.io.File.deleteOnExit() implementation.
366
 
367
* java.io is now implemented by delegating most tasks directly to
368
java.nio.
369
 
370
* Reworked/Optimized implementations of java.nio.Buffer and subclasses.
371
 
372
* BufferedReader speed improvements.
373
 
374
* Multiple java.net.InetAdress fixes and java.rmi fixes.
375
 
376
* ServerSocket.accept() now restarts listening when system call
377
interrupted.
378
 
379
* java.net.URI implementation.
380
 
381
* New javax.print, javax.print.attribute[.standard] and
382
javax.print.event packages and classes.
383
 
384
* java.text multiple new features and bug fixes (only 2 out of the
385
1000+ java.text Mauve tests now fail).
386
 
387
* java.text attributed iterators support.
388
 
389
* Improved useabilty of java.text implementation for several
390
applications.
391
 
392
* More AWT accessible support.
393
 
394
* AWT gtk+ peers component layout, dialog placement, keyboard focus
395
handling and text positioning have been improved.
396
 
397
* ImageIO interfaces are more complete.
398
 
399
* JList, JTable and JTree have been hugely improved.
400
 
401
* java.awt.Robot support with GdkRobot in the gtk+ awt peers. Needs
402
XTest Extension (libXtst) XServer support.
403
 
404
* Full java.awt.color implementation, with all standard ICC profiles,
405
except for PhotoYCC color space.
406
 
407
* java.awt.image support updated to 1.4.
408
 
409
* Big-endian (PowerPC) fixes for native awt GTK+ peers.
410
 
411
* Better AWT focus management fro GTK+ peers.
412
 
413
* Much faster and better fonts support (for both gdk Graphics and cairo
414
Graphics2D)
415
 
416
* AWT Choice fixes for hidden components.
417
 
418
* More javax.imageio support.
419
 
420
* Better AWT Help MenuBar support.
421
 
422
* Swing TabbedPane, ColorChooser and ComboBox improvements.
423
 
424
* Start of JTree functionality.
425
 
426
* javax.swing.Spring and SpringLayout support.
427
 
428
* Added pluggable look and feel support for BasicTextFieldUI and
429
BasicToolBarSeparatorUI.
430
 
431
* java.swing.text support for (Default and Layered) Highlighter,
432
FieldView, PlainView, TabExpander and TabableView added.
433
 
434
* Start of JTable and JTree implementation.
435
 
436
* Internal Swing frames work.
437
 
438
* JMenu and JPopupMenu work.
439
 
440
* New gtk+ AWT FileDialog peer now based on gtk+2.4 or higher.
441
 
442
* java.awt.image LookupTables and kernel support.
443
 
444
* Improved java.awt.image.BufferedImage support.
445
 
446
* AWT 1.0 event model support.
447
 
448
* Frame.setIconImage() support.
449
 
450
* AWT GDKGraphics scaling.
451
 
452
* New configure flag --enable-gtk-cairo to build Graphics2D
453
implementation build on cairo and pangoft2. Enabled at runtime by
454
defining the system property gnu.java.awt.peer.gtk.Graphics=Graphics2D.
455
 
456
* javax.swing.JSpinner implemented.
457
 
458
* java.awt.geom completed. Area, Arc2D, Ellipse2D and Line2D
459
implemented.
460
 
461
* JColorChooser, JComboBox and JTextField implemented, including
462
example uses in GNU Classpath Examples swing Demo.
463
 
464
* Better (non-black) default AWT System colors.
465
 
466
* AWT lists use GTK treeviews.
467
 
468
* Proper AWT focus management has been implemented.
469
 
470
* Swing menus and scrollpanes are beginning to work.
471
 
472
* Swing splitpanes, dialogs and internal frames were added.
473
 
474
* Swing repainting / double buffering was redone.
475
 
476
* Font management and Pango DPI conversion fixes.
477
 
478
* A lot of AWT imaging and event bugs have been picked out.
479
 
480
* More of javax.swing.text has been implemented.
481
 
482
* javax.swing.Timer has been reimplemented.
483
 
484
* The gnu.java.awt.EmbeddedWindow class has been improved, and now
485
supports embedding AWT windows in other top-level X windows. This
486
functionality is required by gcjwebplugin.
487
 
488
* New javax.imageio, javax.imageio.event and javax.imageio.spi packages
489
and classes.
490
 
491
* Working implementation of javax.swing.undo.
492
 
493
* java.awt.geom.CubicCurve2D/QuadCurve2D: Can now solve cubic and
494
quadratic equations; implementation adapted from the GNU Scientific
495
Library.
496
 
497
* Lots of java.awt and gtk+ peer improvements. Also more Swing work.
498
Start of EmbeddedWindow support.
499
 
500
*** Changes in GCC 3.4:
501
 
502
* Compiling a .jar file will now cause non-.class entries to be automatically
503
  compiled as resources.
504
 
505
* libgcj has been ported to Darwin.
506
 
507
* Jeff Sturm has adapted Jan Hubicka's call graph optimization code to gcj.
508
 
509
* libgcj has a new gcjlib URL type; this lets URLClassLoader load code from
510
  shared libraries.
511
 
512
* libgcj has been much more completely merged with GNU Classpath.
513
 
514
* Class loading is now much more correct; in particular the caller's class
515
  loader is now used when that is required.
516
 
517
* Eclipse 2.x will run out of the box using gij.
518
 
519
* Parts of java.nio have been implemented. Direct and indirect buffers work,
520
  as do fundamental file and socket operations.
521
 
522
* java.awt has been improved, though it is still not ready for general use.
523
 
524
* The HTTP protocol handler now uses HTTP/1.1 and can handle the POST method.
525
 
526
* The MinGW port has matured. Enhancements include socket timeout support,
527
  thread interruption, improved Runtime.exec() handling and support for
528
  accented characters in filenames.
529
 
530
*** Changes in GCC 3.3:
531
 
532
* The java.sql and javax.sql packages now implement the JDBC 3.0 (JDK 1.4)
533
  API.
534
 
535
* The JDK 1.4 assert facility has been implemented.
536
 
537
* The bytecode interpreter is now direct threaded and thus faster.
538
 
539
 
540
*** Changes in GCC 3.1:
541
 
542
* libgcj now includes RMI, java.lang.ref.*, javax.naming, and
543
  javax.transaction.
544
 
545
* Property files and other system resources can be compiled into executables
546
  which use libgcj using the new gcj --resource feature.
547
 
548
* libgcj has been ported to more platforms. In particular there is now a
549
  mostly-functional mingw32 (Windows) target port.
550
 
551
* JNI and CNI invocation interfaces were implemented, so gcj-compiled Java
552
  code can now be called from a C/C++ application.
553
 
554
* gcj can now use builtin functions for certain known methods, for instance
555
  Math.cos.
556
 
557
* gcj can now automatically remove redundant array-store checks in some common
558
  cases.
559
 
560
* The --no-store-checks optimization option was added. This can be used to
561
  omit runtime store checks for code which is known not to throw
562
  ArrayStoreException
563
 
564
* The following third party interface standards were added to libgcj:
565
  org.w3c.dom and org.xml.sax.
566
 
567
* java.security has been merged with GNU Classpath. The new package is now
568
  JDK 1.2 compliant, and much more complete.
569
 
570
* A bytecode verifier was added to the libgcj interpreter.
571
 
572
* java.lang.Character was rewritten to comply with the Unicode 3.0 standard,
573
  and improve performance.
574
 
575
* Partial support for many more locales was added to libgcj.
576
 
577
* Socket timeouts have been implemented.
578
 
579
* libgcj has been merged into a single shared library. There are no longer
580
  separate shared libraries for the garbage collector and zlib.
581
 
582
* Several performance improvements were made to gcj and libgcj:
583
      o Hash synchronization (thin locks)
584
      o A special allocation path for finalizer-free objects
585
      o Thread-local allocation
586
      o Parallel GC, and other GC tweaks
587
 
588
*** Changes in GCC 3.0:
589
 
590
* libgcj now includes a bytecode interpreter. If a compiled version of a class
591
is not found in the application binary or linked shared libraries, the
592
class loader will search for a bytecode version in the CLASSPATH and execute
593
it using the interpreter. A new front end that behaves like the traditional
594
`java' command is also provided: `gij'.
595
 
596
* Support for specifying java system properties. Properties can either be set
597
at runtime via the GCJ_PROPERTIES environment variable in the format
598
"= ..."'; or can be compiled into an application binary using
599
-D=.
600
 
601
* Support for setjmp/longjmp (sjlj) exception handling has been added, as an
602
alternative to the existing range-table based mechanism. sjlj is the default
603
on non-sparc, non-x86 targets, or can be specified with the
604
`--enable-sjlj-exceptions' configure parameter.
605
 
606
* Complete JDK 1.1 reflection support, including invocation.
607
 
608
* Throwable.printStackTrace() has been implemented.
609
 
610
* Runtime.loadLibrary() has been implemented.
611
 
612
* Class.forName() will now try to load a series of shared objects in order
613
to find the requested class.  If a class `gnu.quux.whatever' is requested,
614
libgcj will search the system shared library path (eg LD_LIBRARY_PATH) for
615
`gnu-quux-whatever.so', then `gnu-quux.so', and finally `gnu.so'.
616
 
617
* A pure-java implementation of java.math.BigInteger.
618
 
619
New in libgcj 2.95:
620
 
621
* First public release

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.