2004-02-18 Emmanuel Briot <briot@act-europe.fr>
* ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
Scan_ALI can be used for multiple ALI files without reinitializing
between calls.
2004-02-18 Robert Dewar <dewar@gnat.com>
* debug.adb: Minor reformatting.
2004-02-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
to zero if there is an address clause.
2004-02-18 Thomas Quinot <quinot@act-europe.fr>
* exp_util.adb (Side_Effect_Free): Any literal is side effects free.
2004-02-18 Gary Dismukes <dismukes@gnat.com>
* layout.adb (Layout_Component_List): Revise generation of call to
discriminant-checking function to pass selections of all of the type's
discriminants rather than just the variant-controlling discriminant.
2004-02-18 Olivier Hainque <hainque@act-europe.fr>
* 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
fail in the current setup and triggers spurious system error messages.
Pretend it occurred and failed instead.
2004-02-18 Vincent Celier <celier@gnat.com>
* bld.adb: Mark FLDFLAGS as saved
(Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
it is not the root project. Put each directory to be
extended between double quotes to prevent it to be expanded on Windows.
(Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
the project file. Set them back to their initial values if they have not
been set in the project file.
* gprcmd.adb: (Gprdebug, Debug): New global variables
(Display_Command): New procedure
(Usage): Document new command "linkopts"
Call Display_Command when env var GPRDEBUG has the value "TRUE"
Implement new command "linkopts"
Remove quotes that may be around arguments for "extend"
Always call Normalize_Pathname with arguments formatted for the platform
* Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
Change @echo to @$(display) in target clean to be able to clean silently
* Makefile.prolog: Save FLDFLAGS and give it an initial empty value
* prj-part.adb (Project_Path_Name_Of): Do not put final result in
canonical case.
* prj-part.adb (Parse_Single_Project): Always call with From_Extended
= Extending_All when current project is an extending all project.
* vms_conv.adb (Output_File_Expected): New Boolean global variable,
set to True only for LINK command, after Unix switch -o.
(Process_Arguments): Set Output_File_Expected to True for LINK command
after Unix switch -o. When Output_File_Expected is True, never add an
extension to a file name.
* 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
option file name, only to the --for-linker= switch.
(Option_File_Name): If option file name do not end with ".opt", append
"/OPTIONS".
2004-02-18 GNAT Script <nobody@gnat.com>
* Make-lang.in: Makefile automatically updated
From-SVN: r78024
* configure.ac: When generating auto-build.h, pass
--enable-languages to the sub-configure.
Put quotes around ${program_transform_name} when generating
name of as, ld, nm, objdump.
* configure: Regenerate.
From-SVN: r78012
(s-codes, s-constants, s-emit, s-recog, s-opinit, s-extract)
(s-peep, s-attr, s-attrtab, s-output, s-genrtl, s-modes)
(s-preds, s-iov): Do not depend on move-if-change.
(gcc/ada)
* Make-lang.in (stamp-sdefault): Do not depend on
move-if-change.
From-SVN: r78011
2004-02-17 Stefan Olsson <stefan@xapa.se>
* include/ext/mt_allocator.h: Removed the last
pointer. Deallocated blocks are now added to the front of
freelists as proposed by Felix Yen. This gives roughly 10%
performance boost and saves some memory.
* docs/html/ext/mt_allocator.html: Change due to that deallocated
blocks now are added to the front of freelists. The reason to this
approach is also explained.
From-SVN: r78009
* config/h8300/h8300-protos.h: Update the prototype of
fix_bit_operand().
* config/h8300/h8300.c (fix_bit_operand): Remove the second
argument "what".
* config/h8300/h8300.md: Update all callers.
From-SVN: r78006
ChangeLog:
* combine.c (simplify_if_then_else): Do not replace
(if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
modes differ.
testsuite/ChangeLog:
* gcc.dg/20040217-1.c: New test.
From-SVN: r77988
* gcc.dg/i386-cpuid.h (bit_CMOV): Define.
(i386_cpuid): No need to test if cpuid is available on AMD64.
Fix assembly, so that it works onboth i386 and AMD64.
* gcc.dg/i386-sse-6.c: Include stdio.h, stdlib.h and string.h.
(vecInLong): Fix s[] member type to unsigned int.
(vecInWord): Remove type.
(mmx_tests, sse_tests, dump64_16, dump64_32, dump64_64): Remove.
(a64, b64, c64, d64, e64): Remove.
(main): Pass if CPU has no MMX, SSE, SSE2 or CMOV support.
Remove unused variable. Remove initialization of removed variables.
Don't call mmx_tests nor sse_tests.
(reference_mmx, reference_sse): Remove.
(check): Add return stmt.
* gcc.dg/i386-sse-7.c: New test.
* gcc.dg/i386-mmx-4.c: New test.
From-SVN: r77955
2004-02-16 Geoffrey Keating <geoffk@apple.com>
* doc/md.texi (Insn Canonicalizations): Document left-chaining
in associative operators.
* rtlanal.c (commutative_operand_precedence): Create some new
variables. Prefer a commutative operand on the left, then
binary expressions, then NEG and NOT.
Index: testsuite/ChangeLog
2004-02-16 Geoffrey Keating <geoffk@apple.com>
* gcc.c-torture/compile/20040216-1.c: New.
From-SVN: r77945
* config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
in terms of SHLIB_SOVERSION.
* config/m68k/t-slibgcc-elf-ver: New file.
* config/pa/t-slibgcc-elf-ver: New file.
* config.gcc (m68k-linux, parisc-linux): Use them when not
sjlj exceptions are not configured.
From-SVN: r77920
* java/nio/ByteBuffer.java (endian): Make non-private so other
java.nio classes can inherit it.
(<init>): Don't bother clearing array_offset.
* java/nio/ByteBuffer.java (allocate): Re-implement using wrap.
* java/nio/ByteBuffer.java (get(byte[],int,int)): Check underflow.
Remove redundant test.
* java/nio/ByteBufferImpl.java (asCharBuffer, asShortBuffer,
asIntBuffer, asLongBuffer, asFloatBuffer, asDoubleBuffer):
Use new XxxViewBufferImpl constructors.
* java/nio/MappedByteBufferImpl.java: Likewise.
* java/nio/DirectByteBufferImpl.java: Likewise.
* java/nio/ByteBufferImpl.java: Remove one constructor.
Inline super in remaining constructor.
* java/nio/ByteBuffer.java: Remove unused constructor.
* java/nio/ByteBufferImpl.java (shiftDown): New optimized method.
* java/nio/ByteBufferImpl.java (get, put): Add array_offset.
* java/nio/DirectByteBufferImpl.java (owner): New field.
(offset): Remove unused field.
(<init>): Modify one and add another constructor. Change callers.
(allocateDirect): Removed - not used.
(getImpl, putImpl): Make static and pass address explicitly,
to make them useful for MappedByteBufferImpl.
(get, put): Check for underflow. Modify for new getImpl.
(getImpl): New native method where target is array.
(get(byte[],int,int)): Use the above.
(adjustAddress): New static native method.
(slice, duplicate, asReadOnly): New implementations.
* java/nio/natDirectByteBufferImpl.cc (getImpl, putImpl, shiftDown,
adjustAddress): New or updated native methods.
From-SVN: r77919