]> sourceware.org Git - newlib-cygwin.git/log
newlib-cygwin.git
20 years agofix whitespace, update some copyrights
Christopher Faylor [Mon, 25 Oct 2004 15:49:36 +0000 (15:49 +0000)]
fix whitespace, update some copyrights

20 years agoRemove CRs
Christopher Faylor [Mon, 25 Oct 2004 15:35:41 +0000 (15:35 +0000)]
Remove CRs

20 years ago2004-10-21 Tomer Levi <Tomer.Levi@nsc.com>
Tomer Levi [Mon, 25 Oct 2004 09:44:27 +0000 (09:44 +0000)]
2004-10-21  Tomer Levi  <Tomer.Levi@nsc.com>

* opcode/crx.h (operand_type): Remove redundant types i3, i4, i5, i8, i12.
Add new unsigned immediate types us3, us4, us5, us16.

20 years ago2004-10-24 Dan Aloni <da-x@colinux.org>
Danny Smith [Sun, 24 Oct 2004 09:03:30 +0000 (09:03 +0000)]
2004-10-24  Dan Aloni  <da-x@colinux.org>

* include/ddk/ntapi.h (NtQueryFullAttributesFile,
ZwQueryFullAttributesFile): Declare.
* include/ddk/ntapi.h (RtlDosPathNameToNtPathName_U):
Declare.
lib/ntoskrnl.def (ZwQueryDirectoryFile, ZwQueryFullAttributesFile.
ZwQueryVolumeInformationFile): Add stubs.

20 years ago * configure.in: Use an absolute path to install-sh.
Daniel Jacobowitz [Sat, 23 Oct 2004 20:30:02 +0000 (20:30 +0000)]
* configure.in: Use an absolute path to install-sh.
* configure: Regenerated.

20 years ago* cygcheck.cc (dump_sysinfo): In legend for drive-list: Add ``ram'' and
Bas van Gompel [Fri, 22 Oct 2004 01:29:10 +0000 (01:29 +0000)]
* cygcheck.cc (dump_sysinfo): In legend for drive-list: Add ``ram'' and
``unk''. Use single puts. Add leading newline. Line up equal-signs.

20 years agobfd/
H.J. Lu [Thu, 21 Oct 2004 15:28:31 +0000 (15:28 +0000)]
bfd/

2004-10-21  H.J. Lu  <hongjiu.lu@intel.com>

PR 463
* aoutx.h (aout_link_input_section_std): Pass proper hash entry
to linker reloc_overflow callback.
(aout_link_input_section_ext): Likewise.
(aout_link_reloc_link_order): Likewise.
* coff-a29k.c (coff_a29k_relocate_section): Likewise.
* coff-alpha.c (alpha_ecoff_get_relocated_section_contents):
Likewise.
(alpha_relocate_section): Likewise.
* coff-arm.c (coff_arm_relocate_section): Likewise.
* coff-h8300.c (h8300_reloc16_extra_cases): Likewise.
* coff-h8500.c (extra_case): Likewise.
* coff-i960.c (coff_i960_relocate_section): Likewise.
* coff-mcore.c (coff_mcore_relocate_section): Likewise.
* coff-mips.c (mips_relocate_section): Likewise.
* coff-or32.c (coff_or32_relocate_section): Likewise.
* coff-ppc.c (coff_ppc_relocate_section): Likewise.
* coff-rs6000.c (xcoff_ppc_relocate_section): Likewise.
* coff-sh.c (sh_relocate_section): Likewise.
* coff-tic80.c (coff_tic80_relocate_section): Likewise.
* coff-w65.c (w65_reloc16_extra_cases): Likewise.
* coff-z8k.c (extra_case): Likewise.
* coff64-rs6000.c (xcoff64_ppc_relocate_section): Likewise.
* cofflink.c (_bfd_coff_reloc_link_order): Likewise.
(_bfd_coff_generic_relocate_section): Likewise.
* ecoff.c (ecoff_reloc_link_order): Likewise.
* elf-hppa.h (elf_hppa_relocate_section): Likewise.
* elf-m10200.c (mn10200_elf_relocate_section): Likewise.
* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
* elf32-arm.h (elf32_arm_relocate_section): Likewise.
* elf32-avr.c (elf32_avr_relocate_section): Likewise.
* elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
* elf32-cris.c (cris_elf_relocate_section): Likewise.
* elf32-crx.c (elf32_crx_relocate_section): Likewise.
* elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
* elf32-frv.c (elf32_frv_relocate_section): Likewise.
* elf32-h8300.c (elf32_h8_relocate_section): Likewise.
* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
* elf32-i370.c (i370_elf_relocate_section): Likewise.
* elf32-i386.c (elf_i386_relocate_section): Likewise.
* elf32-i860.c (elf32_i860_relocate_section): Likewise.
* elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
* elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
* elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
* elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
* elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
* elf32-s390.c (elf_s390_relocate_section): Likewise.
* elf32-sh.c (sh_elf_relocate_section): Likewise.
* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
* elf32-v850.c (v850_elf_relocate_section): Likewise.
* elf32-vax.c (elf_vax_relocate_section): Likewise.
* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
* elf64-alpha.c (elf64_alpha_relocate_section): Likewise.
* elf64-mmix.c (mmix_elf_relocate_section): Likewise.
* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
* elf64-s390.c (elf_s390_relocate_section): Likewise.
* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.
* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
* elflink.c (elf_reloc_link_order): Likewise.
* elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
* elfxx-mips.c (_bfd_mips_elf_relocate_section): Likewise.
(_bfd_elf_mips_get_relocated_section_contents): Likewise.
* linker.c (_bfd_generic_reloc_link_order): Likewise.
* pdp11.c (pdp11_aout_link_input_section): Likewise.
(aout_link_reloc_link_order): Likewise.
* reloc.c (bfd_generic_get_relocated_section_contents):
Likewise.
* xcofflink.c (xcoff_reloc_link_order): Likewise.
* simple.c (simple_dummy_reloc_overflow): Updated.

include/

2004-10-21  H.J. Lu  <hongjiu.lu@intel.com>

PR 463
* bfdlink.h (bfd_link_callbacks): Add a pointer to struct
bfd_link_hash_entry to reloc_overflow.

ld/

2004-10-21  H.J. Lu  <hongjiu.lu@intel.com>

PR 463
* ldmain.c (reloc_overflow): Accept a pointer to struct
bfd_link_hash_entry. Report symbol location for relocation
overflow.

20 years ago* cygcheck.cc (dump_sysinfo): Allow for larger drives in drive-list. Change
Christopher Faylor [Thu, 21 Oct 2004 00:06:37 +0000 (00:06 +0000)]
* cygcheck.cc (dump_sysinfo): Allow for larger drives in drive-list.  Change
``Used'' to ``Free'' in helptext-title for drive-list.

20 years ago* select.cc (start_thread_socket): Remove attempt to delay reading of exitsock
Christopher Faylor [Wed, 20 Oct 2004 04:49:34 +0000 (04:49 +0000)]
* select.cc (start_thread_socket): Remove attempt to delay reading of exitsock
or suffer occasional mysterious 60 second hangs.
(socket_cleanup): Empty the exitsock here after the thread has terminated.

20 years agorevert erroneous checkin
Christopher Faylor [Wed, 20 Oct 2004 01:03:55 +0000 (01:03 +0000)]
revert erroneous checkin

20 years ago* fhandler_console.cc (fhandler_console::fixup_after_exec): Fix error message.
Christopher Faylor [Wed, 20 Oct 2004 01:02:18 +0000 (01:02 +0000)]
* fhandler_console.cc (fhandler_console::fixup_after_exec): Fix error message.

20 years ago2004-10-19 Andrew Cagney <cagney@gnu.org>
Andrew Cagney [Tue, 19 Oct 2004 18:52:04 +0000 (18:52 +0000)]
2004-10-19  Andrew Cagney  <cagney@gnu.org>

* src-release (do-djunpack, do-md5sum): Install the generated file
directly into the proto-toplev/ directory.

20 years ago2004-10-19 Andrew Cagney <cagney@gnu.org>
Andrew Cagney [Tue, 19 Oct 2004 18:11:16 +0000 (18:11 +0000)]
2004-10-19  Andrew Cagney  <cagney@gnu.org>

* src-release (GDB_SUPPORT_DIRS): Remove utils and intl.

20 years ago * sysv_sem.cc: Redefine offsetof to circumvent build problems with
Corinna Vinschen [Mon, 18 Oct 2004 14:26:18 +0000 (14:26 +0000)]
* sysv_sem.cc: Redefine offsetof to circumvent build problems with
gcc 3.4.

20 years ago * cygcheck.cc (pretty_id): Don't let i become negative. Fix
Corinna Vinschen [Mon, 18 Oct 2004 10:25:38 +0000 (10:25 +0000)]
* cygcheck.cc (pretty_id): Don't let i become negative. Fix
printf-format.

20 years ago = include/wsahelp.h (WINSOCK_MAPPING, WSHGetWinsockMapping,
Danny Smith [Mon, 18 Oct 2004 04:31:16 +0000 (04:31 +0000)]
= include/wsahelp.h (WINSOCK_MAPPING, WSHGetWinsockMapping,
        PWSH_GET_WINSOCK_MAPPING): Don't define if __OBJC__.

20 years agofix date
Christopher Faylor [Mon, 18 Oct 2004 01:47:00 +0000 (01:47 +0000)]
fix date

20 years ago* cygcheck.cc (pretty_id): Allocate space for ')' in uid and guid.
Christopher Faylor [Mon, 18 Oct 2004 01:44:55 +0000 (01:44 +0000)]
* cygcheck.cc (pretty_id): Allocate space for ')' in uid and guid.

20 years ago* cygcheck.cc (pretty_id): Allocate space for trailing '\0' on uid and guid.
Christopher Faylor [Sun, 17 Oct 2004 23:31:23 +0000 (23:31 +0000)]
* cygcheck.cc (pretty_id): Allocate space for trailing '\0' on uid and guid.

20 years ago* cygcheck.cc (pretty_id): Don't exit on id error. Fix size calculations.
Christopher Faylor [Fri, 15 Oct 2004 13:57:56 +0000 (13:57 +0000)]
* cygcheck.cc (pretty_id): Don't exit on id error.  Fix size calculations.

20 years ago2004-10-15 Robert Wruck <wruck@tweerlei.de>
Danny Smith [Fri, 15 Oct 2004 01:18:11 +0000 (01:18 +0000)]
2004-10-15  Robert Wruck  <wruck@tweerlei.de>
            Danny Smith  <dannysmith@users.sourceforge.net>

= include/winbase.h (InitializeSListHead, Interlocked*):
Guard with !__USE_NTOSKRNL__.

* include/ddk/ntddk.h (__USE_NTOSKRNL__): Define.
* include/ddk/winddk.h (InitializeSListHead, Interlocked*):
Guard with  __USE_NTOSKRNL__.
(ExInterlockedPopEntrySList, ExInterlockedPushEntrySList):
Add prototypes.  Guard macro definition with __USE_NTOSKRNL__
&& _WIN32_WINNT >= 0x0501
(ExAllocateFromNPagedLookasideList, ExAllocateFromPagedLookasideList,
ExFreeToNPagedLookasideList, ExFreeToPagedLookasideList):
Replace calts to InterlockedPopEntrySList, InterlockedPushEntrySList
with ExInterlockedPopEntrySList, ExInterlockedPushEntrySList.

* lib/ddk/ntosknl.def (ExInterlockedPopEntrySList,
ExInterlockedPushEntrySList)  Add stubs with fastcall decoration.
(ExDesktopObjectType, ExEventObjectType, ExSemaphoreObjectType,
ExWindowStationObjectType, IoAdapterObjectType,
IoDeviceHandlerObjectSize, IoDeviceHandlerObjectType,
IoDeviceObjectType, IoDriverObjectType, IoFileObjectType,
LpcPortObjectType, MmSectionObjectType, SeTokenObjectType):
Uncomment stubs.

20 years ago* cygcheck.cc (pretty_id): Correct column calculations. Abort if id is acting
Christopher Faylor [Thu, 14 Oct 2004 17:35:46 +0000 (17:35 +0000)]
* cygcheck.cc (pretty_id): Correct column calculations.  Abort if id is acting
funny.

20 years ago * include/sys/stat.h: Make S_ISLNK comment comply with ISO C90.
Danny Smith [Thu, 14 Oct 2004 07:44:11 +0000 (07:44 +0000)]
* include/sys/stat.h: Make S_ISLNK comment comply with ISO C90.

20 years ago* select.cc (start_thread_socket): Remove unused code.
Christopher Faylor [Wed, 13 Oct 2004 03:26:31 +0000 (03:26 +0000)]
* select.cc (start_thread_socket): Remove unused code.

20 years agomerge from gcc
DJ Delorie [Tue, 12 Oct 2004 23:40:03 +0000 (23:40 +0000)]
merge from gcc
2004-10-12  Kelley Cook  <kcook@gcc.gnu.org>
* configure.in (*-*-cygwin*): Supress warning if newlib not present.
* configure: Regenerate.

20 years agoFix date and paste errors.
Richard Earnshaw [Tue, 12 Oct 2004 16:13:00 +0000 (16:13 +0000)]
Fix date and paste errors.

20 years ago2004-10-12 Paul Brook <paul@codesourcery.com>
Paul Brook [Tue, 12 Oct 2004 14:17:08 +0000 (14:17 +0000)]
2004-10-12  Paul Brook  <paul@codesourcery.com>

bfd/
* elf32-arm.h: Support EABI version 4 objects.
binutils/
* readelf.c (decode_ARM_machine_flags): Support EABI version 4.
gas/
* config/tc-arm.c (md_begin): Change EF_ARM_EABI_VER3 to
EF_ARM_EABI_VER4.
(arm_eabis): Ditto.
* doc/c-arm.texi: Document that we actually support -meabi=4, not
-meabi=3.
include/
* elf/arm.h (EF_ARM_EABI_VER4): Define.

20 years ago* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Revert previous checkin.
Christopher Faylor [Mon, 11 Oct 2004 15:36:13 +0000 (15:36 +0000)]
* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Revert previous checkin.

20 years ago2004-10-11 Robert Wruck <wruck@tweerlei.de>
Danny Smith [Mon, 11 Oct 2004 07:20:26 +0000 (07:20 +0000)]
2004-10-11  Robert Wruck  <wruck@tweerlei.de>

        * include/ddk/winddk.h (IoReleaseRemoveLockAndWait): Fix
        definition
        (IoReleaseRemoveLock): Add definition.

20 years agominor change
Christopher Faylor [Mon, 11 Oct 2004 02:27:43 +0000 (02:27 +0000)]
minor change

20 years ago* cygtls.h (exitsock): New element.
Christopher Faylor [Mon, 11 Oct 2004 02:21:31 +0000 (02:21 +0000)]
* cygtls.h (exitsock): New element.
(exitsock_sin): Ditto.
* cygtls.cc (_cygtls::init_thread): Initialize exitsock to invalid handle.
(_cygtls::call2): Close exitsock if it is valid.
* select.cc (struct socketinf): Remove sin element.
(start_thread_socket): Initialize one SOCK_DGRAM socket per thread instead of
(apparently) expensive opening and closing of socket with each select call.
(socket_cleanup): Send a byte to the exitsock socket as a way to potentially
signal a waiting-for-socket thread to exit.
* tlsoffsets.h: Regenerate.

20 years agoRemove unneeded directory.
Christopher Faylor [Sun, 10 Oct 2004 18:57:16 +0000 (18:57 +0000)]
Remove unneeded directory.

20 years ago* cygcheck.cc (add_path): Don't leak memory when path is already in ``paths''.
Christopher Faylor [Sun, 10 Oct 2004 17:07:23 +0000 (17:07 +0000)]
* cygcheck.cc (add_path): Don't leak memory when path is already in ``paths''.

20 years ago * include/ddk/winnt4.h (Exi386InterlockedDecrementLong,
Danny Smith [Sun, 10 Oct 2004 07:14:04 +0000 (07:14 +0000)]
* include/ddk/winnt4.h (Exi386InterlockedDecrementLong,
Exi386InterlockedExchangeUlong, Exi386InterlockedIncrementLong);
Add prototypes.
* include/winddk.h (ExInterlockedAddUlong,
ExInterlockedInsertHeadList, ExInterlockedInsertTailList,
ExInterlockedRemoveHeadList, ExInterlockedPopEntryList,
ExInterlockedPushEntryList): Change calling convention to
DDKAPI.
(ExfInterlockedAddUlong,ExInterlockedInsertHeadList,
ExInterlockedInsertTailList, ExInterlockedRemoveHeadList,
ExInterlockedPopEntryList, ExInterlockedPushEntryList):
Add prototypes for DDKFASTAPI versions.
Thanks to Vadim Yegor0v <zg at bmg dot lv> for report.
* lib/ntoskrnl.def (ExInterlockedAddUlong,
ExInterlockedInsertHeadList, ExInterlockedInsertTailList,
ExInterlockedRemoveHeadList, ExInterlockedPopEntryList,
ExInterlockedPushEntryList): Remove lead '@' from stubs.
(ExfInterlockedAddUlong,ExfInterlockedInsertHeadList,
ExfInterlockedInsertTailList, ExfInterlockedRemoveHeadList,
ExfInterlockedPopEntryList, ExfInterlockedPushEntryList):
Add fastcall stubs.
(Exi386InterlockedDecrementLong, Exi386InterlockedExchangeUlong,
Exi386InterlockedIncrementLong); Add stdcall stubs.

20 years ago* cygcheck.cc (dump_sysinfo): Warn about trailing (back)slash on mount entries.
Christopher Faylor [Sat, 9 Oct 2004 23:19:38 +0000 (23:19 +0000)]
* cygcheck.cc (dump_sysinfo): Warn about trailing (back)slash on mount entries.

20 years ago* cygcheck.cc (dump_sysinfo): Don't warn about empty path components, just
Christopher Faylor [Sat, 9 Oct 2004 23:15:36 +0000 (23:15 +0000)]
* cygcheck.cc (dump_sysinfo): Don't warn about empty path components, just
display ``.''.

20 years ago2004-10-08 Jeff Johnston <jjohnstn@redhat.com>
Jeff Johnston [Fri, 8 Oct 2004 17:40:57 +0000 (17:40 +0000)]
2004-10-08  Jeff Johnston  <jjohnstn@redhat.com>

        * libc/include/sys/signal.h: If <signal.h> didn't include
        this header file, include <signal.h> to account for
        applications that take advantage that the two header
        files are the same in glibc.

20 years agobfd/
Daniel Jacobowitz [Fri, 8 Oct 2004 13:55:09 +0000 (13:55 +0000)]
bfd/
* config.bfd: Include 64-bit support for i[3-7]86-*-solaris2*.
* elf64-x86-64.c (elf64_x86_64_section_from_shdr): New function.
(elf_backend_section_from_shdr): Define.
binutils/
* readelf.c (get_x86_64_section_type_name): New function.
(get_section_type_name): Use it.
gas/
* config/tc-i386.c: Include "elf/x86-64.h".
(i386_elf_section_type): New function.
* config/tc-i386.h (md_elf_section_type): Define.
(i386_elf_section_type): New prototype.
gas/testsuite/
* gas/i386/i386.exp: Don't run divide test for targets where '/'
is a comment.  Run x86-64-unwind for 64-bit ELF targets.
* gas/i386/x86-64-unwind.d, gas/i386/x86-64-unwind.s: New.
include/
* elf/common.h (PT_SUNW_EH_FRAME): Define.
* elf/x86-64.h (SHT_X86_64_UNWIND): Define.
ld/
* configure.tgt: Include elf_x86_64 for i[3-7]86-*-solaris2*.

20 years agoSeparate entries for common file changes so the automerge can find them.
DJ Delorie [Fri, 8 Oct 2004 02:10:48 +0000 (02:10 +0000)]
Separate entries for common file changes so the automerge can find them.

20 years agobfd ChangeLog
Bob Wilson [Fri, 8 Oct 2004 00:22:12 +0000 (00:22 +0000)]
bfd ChangeLog

* elf32-xtensa.c (elf32xtensa_size_opt): New global variable.
(xtensa_default_isa): Global variable moved here from xtensa-isa.c.
(elf32xtensa_no_literal_movement): New global variable.
(elf_howto_table): Add entries for new relocations.
(elf_xtensa_reloc_type_lookup): Handle new relocations.
(property_table_compare): When addresses are equal, compare sizes and
various property flags.
(property_table_matches): New.
(xtensa_read_table_entries): Extend to read new property tables.  Add
output_addr parameter to indicate that output addresses should be used.
Use bfd_get_section_limit.
(elf_xtensa_find_property_entry): New.
(elf_xtensa_in_literal_pool): Use elf_xtensa_find_property_entry.
(elf_xtensa_check_relocs): Handle new relocations.
(elf_xtensa_do_reloc): Use bfd_get_section_limit.  Handle new
relocations.  Use new xtensa-isa.h functions.
(build_encoding_error_message): Remove encode_result parameter.  Add
new target_address parameter used to detect alignment errors.
(elf_xtensa_relocate_section): Use bfd_get_section_limit.  Clean up
error handling.  Use new is_operand_relocation function.
(elf_xtensa_combine_prop_entries, elf_xtensa_merge_private_bfd_data):
Use underbar macro for error messages.  Formatting.
(get_const16_opcode): New.
(get_l32r_opcode): Add a separate flag for initialization.
(get_relocation_opnd): Operand number is no longer explicit in the
relocation.  Change to decode the opcode and analyze its operands.
(get_relocation_slot): New.
(get_relocation_opcode): Add bfd parameter.  Use bfd_get_section_limit.
Use new xtensa-isa.h functions to handle multislot instructions.
(is_l32r_relocation): Add bfd parameter.  Use is_operand_relocation.
(get_asm_simplify_size, is_alt_relocation, is_operand_relocation,
insn_decode_len, insn_decode_opcode, check_branch_target_aligned,
check_loop_aligned, check_branch_target_aligned_address, narrowable,
widenable, narrow_instruction, widen_instruction, op_single_fmt_table,
get_single_format, init_op_single_format_table): New.
(elf_xtensa_do_asm_simplify): Add error_message parameter and use it
instead of calling _bfd_error_handler.  Use new xtensa-isa.h functions.
(contract_asm_expansion): Add error_message parameter and pass it to
elf_xtensa_do_asm_simplify.  Replace use of R_XTENSA_OP0 relocation
with R_XTENSA_SLOT0_OP.
(get_expanded_call_opcode): Extend to handle either L32R or CONST16
instructions.  Use new xtensa-isa.h functions.
(r_reloc struct): Add new virtual_offset field.
(r_reloc_init): Add contents and content_length parameters.  Set
virtual_offset field to zero.  Add contents to target_offset field for
partial_inplace relocations.
(r_reloc_is_defined): Check for null.
(print_r_reloc): New debug function.
(source_reloc struct): Replace xtensa_operand field with pair of the
opcode and the operand position.  Add is_abs_literal field.
(init_source_reloc): Specify operand by opcode/position pair.  Set
is_abs_literal field.
(source_reloc_compare): When target_offsets are equal, compare other
fields to make sorting predictable.
(literal_value struct): Add is_abs_literal field.
(value_map_hash_table struct): Add has_last_loc and last_loc fields.
(init_literal_value): New.
(is_same_value): Replace with ...
(literal_value_equal): ... this function.  Add comparisons of
virtual_offset and is_abs_literal fields.
(value_map_hash_table_init): Use bfd_zmalloc.  Check for allocation
failure.  Initialize has_last_loc field.
(value_map_hash_table_delete): New.
(hash_literal_value): Rename to ...
(literal_value_hash): ... this.  Include is_abs_literal flag and
virtual_offset field in the hash value.
(get_cached_value): Rename to ...
(value_map_get_cached_value): ... this.  Update calls to
literal_value_hash and literal_value_equal.
(add_value_map): Check for allocation failure.  Update calls to
value_map_get_cached_value and literal_value_hash.
(text_action, text_action_list, text_action_t): New types.
(find_fill_action, compute_removed_action_diff, adjust_fill_action,
text_action_add, text_action_add_literal, offset_with_removed_text,
offset_with_removed_text_before_fill, find_insn_action,
print_action_list, print_removed_literals): New.
(offset_with_removed_literals): Delete.
(xtensa_relax_info struct): Add is_relaxable_asm_section, action_list,
fix_array, fix_array_count, allocated_relocs, relocs_count, and
allocated_relocs_count fields.
(init_xtensa_relax_info): Initialize new fields.
(reloc_bfd_fix struct): Add new translated field.
(reloc_bfd_fix_init): Add translated parameter and use it to set the
translated field.
(fix_compare, cache_fix_array): New.
(get_bfd_fix): Remove fix_list parameter and get all relax_info for the
section via get_xtensa_relax_info.  Use cache_fix_array to set up
sorted fix_array and use bsearch instead of linear search.
(section_cache_t): New struct.
(init_section_cache, section_cache_section, clear_section_cache): New.
(ebb_t, ebb_target_enum, proposed_action, ebb_constraint): New types.
(init_ebb_constraint, free_ebb_constraint, init_ebb, extend_ebb_bounds,
extend_ebb_bounds_forward, extend_ebb_bounds_backward,
insn_block_decodable_len, ebb_propose_action, ebb_add_proposed_action):
New.
(retrieve_contents): Use bfd_get_section_limit.
(elf_xtensa_relax_section): Add relocations_analyzed flag.  Update call
to compute_removed_literals.  Free value_map_hash_table when no longer
needed.
(analyze_relocations): Check is_relaxable_asm_section flag.  Call
compute_text_actions for all sections.
(find_relaxable_sections): Mark sections as relaxable if they contain
ASM_EXPAND relocations that can be optimized.  Adjust r_reloc_init
call.  Increment relax_info src_count field only for appropriate
relocation types.  Remove is_literal_section check.
(collect_source_relocs): Use bfd_get_section_limit.  Adjust calls to
r_reloc_init and find_associated_l32r_irel.  Check
is_relaxable_asm_section flag.  Handle L32R instructions with absolute
literals.  Pass is_abs_literal flag to init_source_reloc.
(is_resolvable_asm_expansion): Use bfd_get_section_limit.  Check for
CONST16 instructions.  Adjust calls to r_reloc_init and
pcrel_reloc_fits.  Handle weak symbols conservatively.
(find_associated_l32r_irel): Add bfd parameter and pass it to
is_l32r_relocation.
(compute_text_actions, compute_ebb_proposed_actions,
compute_ebb_actions, check_section_ebb_pcrels_fit,
check_section_ebb_reduces, text_action_add_proposed,
compute_fill_extra_space): New.
(remove_literals): Replace with ...
(compute_removed_literals): ... this function.  Call
init_section_cache.  Use bfd_get_section_limit.  Sort internal_relocs.
Call xtensa_read_table_entries to get the property table.  Skip
relocations other than R_XTENSA_32 and R_XTENSA_PLT.  Use new
is_removable_literal, remove_dead_literal, and
identify_literal_placement functions.
(get_irel_at_offset): Rewrite to use bsearch on sorted relocations
instead of linear search.
(is_removable_literal, remove_dead_literal,
identify_literal_placement): New.
(relocations_reach): Update check for literal not referenced by any
PC-relative relocations.  Adjust call to pcrel_reloc_fits.
(coalesce_shared_literal, move_shared_literal): New.
(relax_section): Use bfd_get_section_limit.  Call
translate_section_fixes.  Update calls to r_reloc_init and
offset_with_removed_text.  Check new is_relaxable_asm_section flag.
Add call to pin_internal_relocs.  Add special handling for
R_XTENSA_ASM_SIMPLIFY and R_XTENSA_DIFF* relocs.  Use virtual_offset
info to calculate new addend_displacement variable.  Replace code for
deleting literals with more general code to perform the actions
determined by the action_list for the section.
(translate_section_fixes, translate_reloc_bfd_fix): New.
(translate_reloc): Check new is_relaxable_asm_section flag.  Call
find_removed_literal only if is_operand_relocation.  Update call to
offset_with_removed_text.  Use new target_offset and removed_bytes
variables.
(move_literal): New.
(relax_property_section):  Use bfd_get_section_limit.  Set new
is_full_prop_section flag and handle new property tables.  Update calls
to r_reloc_init and offset_with_removed_text.  Check
is_relaxable_asm_section flag.  Handle expansion of zero-sized
unreachable entries, with use of offset_with_removed_text_before_fill.
For relocatable links, combine entries only for literal tables.
(relax_section_symbols): Check is_relaxable_asm_section flag.  Update
calls to offset_with_removed_text.  Translate st_size field for
function symbols.
(do_fix_for_relocatable_link): Change to return bfd_boolean to indicate
failure.  Add contents parameter.  Update call to get_bfd_fix.  Update
call to r_reloc_init.  Call _bfd_error_handler and return FALSE for
R_XTENSA_ASM_EXPAND relocs.
(do_fix_for_final_link): Add input_bfd and contents parameters.  Update
call to get_bfd_fix.  Include offset from contents for partial_inplace
relocations.
(is_reloc_sym_weak): New.
(pcrel_reloc_fits): Use new xtensa-isa.h functions.
(prop_sec_len): New.
(xtensa_is_property_section): Handle new property sections.
(is_literal_section): Delete.
(internal_reloc_compare): When r_offset matches, compare r_info and
r_addend to make sorting predictable.
(internal_reloc_matches): New.
(xtensa_get_property_section_name): Handle new property sections.
(xtensa_get_property_predef_flags): New.
(xtensa_callback_required_dependence): Use bfd_get_section_limit.
Update calls to xtensa_isa_init, is_l32r_relocation, and r_reloc_init.
* xtensa-isa.c (xtensa_default_isa): Moved to elf32-xtensa.c.
(xtisa_errno, xtisa_error_msg): New variables.
(xtensa_isa_errno, xtensa_isa_error_msg): New.
(xtensa_insnbuf_alloc): Add error handling.
(xtensa_insnbuf_to_chars): Add num_chars parameter.  Update to
use xtensa_format_decode.  Add error handling.
(xtensa_insnbuf_from_chars): Add num_chars parameter.  Decode the
instruction length to find the number of bytes to copy.
(xtensa_isa_init): Add error handling.  Replace calls to
xtensa_load_isa and xtensa_extend_isa with code to initialize lookup
tables in the xtensa_modules structure.
(xtensa_check_isa_config, xtensa_add_isa, xtensa_load_isa,
xtensa_extend_isa): Delete.
(xtensa_isa_free): Change to only free lookup tables.
(opname_lookup_compare): Replace with ...
(xtensa_isa_name_compare): ... this function.  Use strcasecmp.
(xtensa_insn_maxlength): Rename to ...
(xtensa_isa_maxlength): ... this.
(xtensa_insn_length): Delete.
(xtensa_insn_length_from_first_byte): Replace with ...
(xtensa_isa_length_from_chars): ... this function.
(xtensa_num_opcodes): Rename to ...
(xtensa_isa_num_opcodes): ... this.
(xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
xtensa_isa_num_regfiles, xtensa_isa_num_stages,
xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
xtensa_format_get_slot, xtensa_format_set_slot): New functions.
(xtensa_opcode_lookup): Add error handling.
(xtensa_decode_insn): Replace with ...
(xtensa_opcode_decode): ... this function, with new format and
slot parameters.  Add error handling.
(xtensa_encode_insn): Replace with ...
(xtensa_opcode_encode): ... this function, which does the encoding via
one of the entries in the "encode_fns" array.  Add error handling.
(xtensa_opcode_name): Add error handling.
(xtensa_opcode_is_branch, xtensa_opcode_is_jump, xtensa_opcode_is_loop,
xtensa_opcode_is_call): New.
(xtensa_num_operands): Replace with ...
(xtensa_opcode_num_operands): ... this function.  Add error handling.
(xtensa_opcode_num_stateOperands,
xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
xtensa_opcode_funcUnit_use, xtensa_operand_name,
xtensa_operand_is_visible): New.
(xtensa_get_operand, xtensa_operand_kind): Delete.
(xtensa_operand_inout): Add error handling and special-case for
"sout" operands.
(xtensa_operand_get_field, xtensa_operand_set_field): Rewritten to
operate on one slot of an instruction.  Added error handling.
(xtensa_operand_encode): Handle default operands with no encoding
functions.  Check for success by comparing against decoded value.
Add error handling.
(xtensa_operand_decode): Handle default operands.  Return decoded value
through argument pointer.  Add error handling.
(xtensa_operand_is_register, xtensa_operand_regfile,
xtensa_operand_num_regs, xtensa_operand_is_known_reg): New.
(xtensa_operand_isPCRelative): Rename to ...
(xtensa_operand_is_PCrelative): ... this.  Add error handling.
(xtensa_operand_do_reloc, xtensa_operand_undo_reloc): Return value
through argument pointer.  Add error handling.
(xtensa_stateOperand_state, xtensa_stateOperand_inout,
xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
xtensa_regfile_lookup_shortname, xtensa_regfile_name,
xtensa_regfile_shortname, xtensa_regfile_view_parent,
xtensa_regfile_num_bits, xtensa_regfile_num_entries,
xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
xtensa_state_is_exported, xtensa_sysreg_lookup,
xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
xtensa_interface_num_bits, xtensa_interface_inout,
xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New.
* xtensa-modules.c: Rewrite to use new data structures.
* reloc.c (BFD_RELOC_XTENSA_DIFF8, BFD_RELOC_XTENSA_DIFF16,
BFD_RELOC_XTENSA_DIFF32, BFD_RELOC_XTENSA_SLOT0_OP,
BFD_RELOC_XTENSA_SLOT1_OP, BFD_RELOC_XTENSA_SLOT2_OP,
BFD_RELOC_XTENSA_SLOT3_OP, BFD_RELOC_XTENSA_SLOT4_OP,
BFD_RELOC_XTENSA_SLOT5_OP, BFD_RELOC_XTENSA_SLOT6_OP,
BFD_RELOC_XTENSA_SLOT7_OP, BFD_RELOC_XTENSA_SLOT8_OP,
BFD_RELOC_XTENSA_SLOT9_OP, BFD_RELOC_XTENSA_SLOT10_OP,
BFD_RELOC_XTENSA_SLOT11_OP, BFD_RELOC_XTENSA_SLOT12_OP,
BFD_RELOC_XTENSA_SLOT13_OP, BFD_RELOC_XTENSA_SLOT14_OP,
BFD_RELOC_XTENSA_SLOT0_ALT, BFD_RELOC_XTENSA_SLOT1_ALT,
BFD_RELOC_XTENSA_SLOT2_ALT, BFD_RELOC_XTENSA_SLOT3_ALT,
BFD_RELOC_XTENSA_SLOT4_ALT, BFD_RELOC_XTENSA_SLOT5_ALT,
BFD_RELOC_XTENSA_SLOT6_ALT, BFD_RELOC_XTENSA_SLOT7_ALT,
BFD_RELOC_XTENSA_SLOT8_ALT, BFD_RELOC_XTENSA_SLOT9_ALT,
BFD_RELOC_XTENSA_SLOT10_ALT, BFD_RELOC_XTENSA_SLOT11_ALT,
BFD_RELOC_XTENSA_SLOT12_ALT, BFD_RELOC_XTENSA_SLOT13_ALT,
BFD_RELOC_XTENSA_SLOT14_ALT): Add new relocations.
* Makefile.am (xtensa-isa.lo, xtensa-modules.lo): Update dependencies.
* Makefile.in: Regenerate.
* bfd-in2.h: Likewise.
* libbfd.h: Likewise.

gas ChangeLog

* config/tc-xtensa.c (absolute_literals_supported): New global flag.
(UNREACHABLE_MAX_WIDTH): Define.
(XTENSA_FETCH_WIDTH): Delete.
(cur_vinsn, xtensa_fetch_width, xt_saved_debug_type, past_xtensa_end,
prefer_const16, prefer_l32r): New global variables.
(LIT4_SECTION_NAME): Define.
(lit4_state struct): Add lit4_seg_name and lit4_seg fields.
(XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define.
(frag_flags struct): New.
(xtensa_block_info struct): Move from tc-xtensa.h.  Add flags field.
(subseg_map struct): Add cur_total_freq and cur_target_freq fields.
(bitfield, bit_is_set, set_bit, clear_bit): Define.
(MAX_FORMATS): Define.
(op_placement_info struct, op_placement_table): New.
(O_pltrel, O_hi16, O_lo16): Define.
(directiveE enum): Rename directive_generics to directive_transform.
Delete directive_relax.  Add directive_schedule,
directive_absolute_literals, and directive_last_directive.
(directive_info): Rename "generics" to "transform".  Delete "relax".
Add "schedule" and "absolute-literals".
(directive_state): Adjust entries to match changes in directive_info.
(xtensa_relax_statesE, RELAX_IMMED_MAXSTEPS): Move to tc-xtensa.h.
(xtensa_const16_opcode, xtensa_movi_opcode, xtensa_movi_n_opcode,
xtensa_l32r_opcode, xtensa_nop_opcode, xtensa_rsr_lcount_opcode): New.
(xtensa_j_opcode, xtensa_rsr_opcode): Delete.
(align_only_targets, software_a0_b_retw_interlock,
software_avoid_b_j_loop_end, maybe_has_b_j_loop_end,
software_avoid_short_loop, software_avoid_close_loop_end,
software_avoid_all_short_loops, specific_opcode): Delete.
(warn_unaligned_branch_targets): New.
(workaround_a0_b_retw, workaround_b_j_loop_end, workaround_short_loop,
workaround_close_loop_end, workaround_all_short_loops): Default FALSE.
(option_[no_]link_relax, option_[no_]transform,
option_[no_]absolute_literals, option_warn_unaligned_targets,
option_prefer_l32r, option_prefer_const16, option_target_hardware):
New enum values.
(option_[no_]align_only_targets, option_literal_section_name,
option_text_section_name, option_data_section_name,
option_bss_section_name, option_eb, option_el): Delete.
(md_longopts): Add entries for: [no-]transform, [no-]absolute-literals,
warn-unaligned-targets, prefer-l32r, prefer-const16, [no-]link-relax,
and target-hardware.  Delete entries for [no-]target-align-only,
literal-section-name, text-section-name, data-section-name, and
bss-section-name.
(md_parse_option): Handle new options and remove old ones.  Accept but
ignore [no-]density options.  Warn for [no-]generics and [no-]relax
and treat them as [no-]transform.
(md_show_usage): Add new options and remove old ones.
(xtensa_setup_hw_workarounds): New.
(md_pseudo_table): Change "word" entry to use xtensa_elf_cons.  Add
"long", "short", "loc" and "frequency" entries.
(use_generics): Rename to ...
(use_transform): ... this function.  Add past_xtensa_end check.
(use_longcalls): Add past_xtensa_end check.
(code_density_available, can_relax): Delete.
(do_align_targets): New.
(get_directive): Accept dashes in directive names.  Warn about
[no-]generics and [no-]relax directives and treat them as
[no-]transform.
(xtensa_begin_directive): Call md_flush_pending_output only for some
directives.  Check for directives inside instruction bundles.  Warn
about deprecated ".begin literal" usage.  Warn and ignore [no-]density
directives.  Handle new directives.  Check generating_literals flag
for literal_prefix.
(xtensa_end_directive): Check for directives inside instruction
bundles.  Warn and ignore [no-]density directives.  Handle new
directives.  Call xtensa_set_frag_assembly_state.
(xtensa_loc_directive_seen, xtensa_dwarf2_directive_loc,
xtensa_dwarf2_emit_insn): New.
(xtensa_literal_position): Call md_flush_pending_output.  Do not check
use_literal_section flag.
(xtensa_literal_pseudo): Call md_flush_pending_output.  Handle absolute
literals.  Use xtensa_elf_cons to parse the expression.
(xtensa_literal_prefix): Do not check use_literal_section.  Support
".lit4" sections for absolute literals.  Change prefix convention to
replace ".text" (or ".t" in a linkonce section).  No need to call
subseg_set.
(xtensa_frequency_pseudo, xtensa_elf_cons, xtensa_elf_suffix): New.
(expression_end): Handle closing braces and colons.
(PLT_SUFFIX, plt_suffix): Delete.
(expression_maybe_register): Use new xtensa-isa.h functions.  Use
xtensa_elf_suffix instead of checking for plt suffix, and handle O_lo16
and O_hi16 expressions as well.
(tokenize_arguments): Handle closing braces and colons.
(parse_arguments): Use new xtensa-isa.h functions.  Handle "invisible"
operands and paired register syntax.
(get_invisible_operands): New.
(xg_translate_sysreg_op): Handle new Xtensa LX RSR/WSR/XSR syntax.  Use
new xtensa-isa.h functions.
(xtensa_translate_old_userreg_ops, xtensa_translate_zero_immed): New.
(xg_translate_idioms): Check if inside bundle.  Use use_transform.
Handle new Xtensa LX RSR/WSR/XSR syntax.  Remove code to widen density
instructions.  Use xtensa_translate_zero_immed.
(operand_is_immed, operand_is_pcrel_label): Delete.
(get_relaxable_immed): Use new xtensa-isa.h functions.
(get_opcode_from_buf): Add slot parameter.  Use new xtensa-isa.h
functions.
(xtensa_print_insn_table, print_vliw_insn): New.
(is_direct_call_opcode): Use new xtensa-isa.h functions.
(is_call_opcode, is_loop_opcode, is_conditional_branch_opcode,
is_branch_or_jump_opcode): Delete.
(is_movi_opcode, decode_reloc, encode_reloc, encode_alt_reloc): New.
(opnum_to_reloc, reloc_to_opnum): Delete.
(xtensa_insnbuf_set_operand, xtensa_insnbuf_get_operand): Use new
xtensa-isa.h functions.  Operate on one slot of an instruction.
(xtensa_insnbuf_set_immediate_field, is_negatable_branch,
xg_get_insn_size): Delete.
(xg_get_build_instr_size): Use xg_get_single_size.
(xg_is_narrow_insn, xg_is_single_relaxable_insn): Update calls to
xg_build_widen_table.  Use xg_get_single_size.
(xg_get_max_narrow_insn_size): Delete.
(xg_get_max_insn_widen_size, xg_get_max_insn_widen_literal_size,
xg_is_relaxable_insn): Update calls to xg_build_widen_table.  Use
xg_get_single_size.
(xg_build_to_insn): Record the loc field.  Handle OP_OPERAND_HI16U and
OP_OPERAND_LOW16U.  Check xg_valid_literal_expression.
(xg_expand_to_stack, xg_expand_narrow): Update calls to
xg_build_widen_table.  Use xg_get_single_size.
(xg_immeds_fit): Use new xtensa-isa.h functions.  Update call to
xg_check_operand.
(xg_symbolic_immeds_fit): Likewise.  Also handle O_lo16 and O_hi16, and
treat weak symbols conservatively.
(xg_check_operand): Use new xtensa-isa.h functions.
(is_dnrange): Delete.
(xg_assembly_relax): Inline previous calls to tinsn_copy.
(xg_finish_frag): Specify separate relax states for the frag and slot0.
(is_branch_jmp_to_next, xg_add_branch_and_loop_targets): Use new
xtensa-isa.h functions.
(xg_instruction_matches_option_term, xg_instruction_matches_or_options,
xg_instruction_matches_options): New.
(xg_instruction_matches_rule): Handle O_register expressions.  Call
xg_instruction_matches_options.
(transition_rule_cmp): New.
(xg_instruction_match): Update call to xg_build_simplify_table.
(xg_build_token_insn): Record loc fields.
(xg_simplify_insn): Check is_specific_opcode field and
density_supported flag.
(xg_expand_assembly_insn): Skip checking code_density_available.  Use
new xtensa-isa.h functions.  Call use_transform instead of can_relax.
(xg_assemble_literal): Add error handling for O_big.  Call
record_alignment.  Handle O_pltrel.
(xg_valid_literal_expression): New.
(xg_assemble_literal_space): Add slot parameter.  Remove call to
set_expr_symbol_offset.  Add call to record_alignment.  Update call to
xg_finish_frag.
(xg_emit_insn): Delete.
(xg_emit_insn_to_buf): Add format parameter.  Update calls to
xg_add_opcode_fix and xtensa_insnbuf_to_chars.
(xg_add_opcode_fix): Change opcode parameter to tinsn and add format
and slot parameters.  Handle new "alternate" relocations for absolute
literals and CONST16 instructions.  Check for bad uses of O_lo16 and
O_hi16.  Use new xtensa-isa.h functions.
(xg_assemble_tokens): Delete.
(is_register_writer): Use new xtensa-isa.h functions.
(is_bad_loopend_opcode): Check for xtensa_rsr_lcount_opcode instead of
old-style RSR from LCOUNT.
(next_frag_opcode): Delete.
(next_frag_opcode_is_loop, next_frag_format_size, frag_format_size,
update_next_frag_state): New.
(update_next_frag_nop_state): Delete.
(next_frag_pre_opcode_bytes): Use next_frag_opcode_is_loop.
(xtensa_mark_literal_pool_location): Check use_literal_section flag and
the state of the absolute-literals directive.  Add calls to
record_alignment and xtensa_set_frag_assembly_state.  Call
xtensa_switch_to_non_abs_literal_fragment instead of
xtensa_switch_to_literal_fragment.
(build_nop): New.
(assemble_nop): Use build_nop.  Update call to xtensa_insnbuf_to_chars.
(get_expanded_loop_offset): Change check for undefined opcode to an
assertion.
(xtensa_set_frag_assembly_state, relaxable_section,
xtensa_find_unmarked_state_frags, xtensa_find_unaligned_branch_targets,
xtensa_find_unaligned_loops, xg_apply_tentative_value): New.
(md_begin): Update call to xtensa_isa_init.  Initialize linkrelax to 1.
Set lit4_seg_name.  Call xg_init_vinsn.  Initialize new global opcodes.
Call init_op_placement_info_table and xtensa_set_frag_assembly_state.
(xtensa_init_fix_data): New.
(xtensa_frob_label): Reset label symbol to the current frag.  Check
do_align_targets and generating_literals flag.  Propagate frequency
info to new alignment frag.  Call xtensa_set_frag_assembly_state.
(xtensa_unrecognized_line): New.
(xtensa_flush_pending_output): Check if inside a bundle.  Add a call
to xtensa_set_frag_assembly_state.
(error_reset_cur_vinsn): New.
(md_assemble): Remove check for literal frag.  Remove call to
istack_init.  Call use_transform instead of use_generics.  Parse
explicit instruction format specifiers.  Move code for
a0_b_retw_interlock workaround to xg_assemble_vliw_tokens.  Call
error_reset_cur_vinsn on errors.  Add call to get_invisible_operands.
Add dwarf2_where call.  Remote automatic alignment for ENTRY
instructions.  Move call to xtensa_clear_insn_labels to the end.
Rearrange to handle bundles.
(xtensa_cons_fix_new): Delete.
(xtensa_handle_align): New.
(xtensa_frag_init): Call xtensa_set_frag_assembly_state.  Remove
assignment to is_no_density field.
(md_pcrel_from): Use new xtensa-isa.h functions.  Use decode_reloc
instead of reloc_to_opnum.  Handle "alternate" relocations.
(xtensa_force_relocation, xtensa_check_inside_bundle,
xtensa_elf_section_change_hook): New.
(xtensa_symbol_new_hook): Delete.
(xtensa_fix_adjustable): Check for difference of symbols with an
offset.  Check for external and weak symbols.
(md_apply_fix3): Remove cases for XTENSA_OP{0,1,2} relocs.
(md_estimate_size_before_relax): Return expansion for the first slot.
(tc_gen_reloc): Handle difference of symbols by producing
XTENSA_DIFF{8,16,32} relocs and by writing the value of the difference
into the output.  Handle new XTENSA_SLOT*_OP relocs by storing the
tentative values into the output when linkrelax is set.
(XTENSA_PROP_SEC_NAME): Define.
(xtensa_post_relax_hook): Call xtensa_find_unmarked_state_frags.
Create literal tables only if using literal sections.  Create new
property tables instead of old instruction tables.  Check for unaligned
branch targets and loops.
(finish_vinsn, find_vinsn_conflicts, check_t1_t2_reads_and_writes,
new_resource_table, clear_resource_table, resize_resource_table,
resources_available, reserve_resources, release_resources,
opcode_funcUnit_use_unit, opcode_funcUnit_use_stage,
resources_conflict, xg_find_narrowest_format, relaxation_requirements,
bundle_single_op, emit_single_op, xg_assemble_vliw_tokens): New.
(xtensa_end): Call xtensa_flush_pending_output.  Set past_xtensa_end
flag.  Update checks for workaround options.  Call
xtensa_mark_narrow_branches and xtensa_mark_zcl_first_insns.
(xtensa_cleanup_align_frags): Add special case for branch targets.
Check for and mark unreachable frags.
(xtensa_fix_target_frags): Remove use of align_only_targets flag.
Use RELAX_LOOP_END_BYTES in special case for negatable branch at the
end of a zero-overhead loop body.
(frag_can_negate_branch): Handle instructions with multiple slots.
Use new xtensa-isa.h functions
(xtensa_mark_narrow_branches, is_narrow_branch_guaranteed_in_range,
xtensa_mark_zcl_first_insns): New.
(xtensa_fix_a0_b_retw_frags, xtensa_fix_b_j_loop_end_frags): Error if
transformations are disabled.
(next_instrs_are_b_retw): Use new xtensa-isa.h functions.  Handle
multislot instructions.
(xtensa_fix_close_loop_end_frags, xtensa_fix_short_loop_frags):
Likewise.  Also error if transformations are disabled.
(unrelaxed_frag_max_size): New.
(unrelaxed_frag_min_insn_count, unrelax_frag_has_b_j): Use new
xtensa-isa.h functions.
(xtensa_sanity_check, is_empty_loop, is_local_forward_loop): Use
xtensa_opcode_is_loop instead of is_loop_opcode.
(get_text_align_power): Replace as_fatal with assertion.
(get_text_align_fill_size): Iterate instead of using modulus when
use_nops is false.
(get_noop_aligned_address): Assert that this is for a machine-dependent
RELAX_ALIGN_NEXT_OPCODE frag.  Use next_frag_opcode_is_loop,
xg_get_single_size, and frag_format_size.
(get_widen_aligned_address): Rename to ...
(get_aligned_diff): ... this function.  Add max_diff parameter.
Remove handling of rs_align/rs_align_code frags.  Use
next_frag_format_size, get_text_align_power, get_text_align_fill_size,
next_frag_opcode_is_loop, and xg_get_single_size.  Compute max_diff
and pass it back to caller.
(xtensa_relax_frag): Use relax_frag_loop_align.  Add code for new
RELAX_SLOTS, RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN,
RELAX_FILL_NOP, and RELAX_UNREACHABLE frag types.  Check relax_seen.
(relax_frag_text_align): Rename to ...
(relax_frag_loop_align): ... this function.  Assume loops can only be
in the first slot of an instruction.
(relax_frag_add_nop): Use assemble_nop instead of constructing an OR
instruction.  Remove call to frag_wane.
(relax_frag_narrow): Rename to ...
(relax_frag_for_align): ... this function.  Extend to handle
RELAX_FILL_NOP and RELAX_UNREACHABLE, as well as RELAX_SLOTS with
RELAX_NARROW for the first slot.
(find_address_of_next_align_frag, bytes_to_stretch): New.
(future_alignment_required): Use find_address_of_next_align_frag and
bytes_to_stretch.  Look ahead to subsequent frags to make smarter
alignment decisions.
(relax_frag_immed): Add format, slot, and estimate_only parameters.
Check if transformations are enabled for b_j_loop_end workaround.
Use new xtensa-isa.h functions and handle multislot instructions.
Update call to xg_assembly_relax.
(md_convert_frag): Handle new RELAX_SLOTS, RELAX_UNREACHABLE,
RELAX_MAYBE_UNREACHABLE, RELAX_MAYBE_DESIRE_ALIGN, and RELAX_FILL_NOP
frag types.
(convert_frag_narrow): Add segP, format and slot parameters.  Call
convert_frag_immed for branch instructions.  Adjust calls to
tinsn_from_chars, tinsn_immed_from_frag, and xg_emit_insn_to_buf.  Use
xg_get_single_size and xg_get_single_format.
(convert_frag_fill_nop): New.
(convert_frag_immed): Add format and slot parameters.  Handle multislot
instructions and use new xtensa-isa.h functions.  Update calls to
tinsn_immed_from_frag and xg_assembly_relax.  Check if transformations
enabled for b_j_loop_end workaround.  Use build_nop instead of
assemble_nop.  Check is_specific_opcode flag.  Check for unreachable
frags.  Use xg_get_single_size.  Handle O_pltrel.
(fix_new_exp_in_seg): Remove check for old plt flag.
(convert_frag_immed_finish_loop): Update calls to tinsn_from_chars and
xtensa_insnbuf_to_chars.  Call tinsn_immed_from_frag.  Change check
for loop opcode to an assertion.  Mark all frags up to the end of the
loop as not transformable.
(get_last_insn_flags, set_last_insn_flags): Use get_subseg_info.
(get_subseg_info): New.
(xtensa_move_literals): Call xtensa_set_frag_assembly_state.  Add null
check for dest_seg.
(xtensa_switch_to_literal_fragment): Rewrite to handle absolute
literals and use xtensa_switch_to_non_abs_literal_fragment otherwise.
(xtensa_switch_to_non_abs_literal_fragment): New.
(cache_literal_section): Add is_code parameter and pass it through to
retrieve_literal_seg.
(retrieve_literal_seg): Add is_code parameter and use it to set the
flags on the literal section.  Handle case where head parameter is 0.
(get_frag_is_no_transform, set_frag_is_specific_opcode,
set_frag_is_no_transform): New.
(xtensa_create_property_segments): Add end_property_function parameter
and pass it through to add_xt_block_frags.  Call bfd_get_section_flags
and skip SEC_DEBUGGING and !SEC_ALLOC sections.
(xtensa_create_xproperty_segments, section_has_xproperty): New.
(add_xt_block_frags): Add end_property_function parameter and call it
if it is non-zero.  Call xtensa_frag_flags_init.
(xtensa_frag_flags_is_empty, xtensa_frag_flags_init,
get_frag_property_flags, frag_flags_to_number,
xtensa_frag_flags_combinable, xt_block_aligned_size,
xtensa_xt_block_combine, add_xt_prop_frags,
init_op_placement_info_table, opcode_fits_format_slot,
xg_get_single_size, xg_get_single_format): New.
(istack_push): Inline call to tinsn_copy.
(tinsn_copy): Delete.
(tinsn_has_invalid_symbolic_operands): Handle O_hi16 and O_lo16 and
CONST16 opcodes.  Handle O_big, O_illegal, and O_absent.
(tinsn_has_complex_operands): Handle O_hi16 and O_lo16.
(tinsn_to_insnbuf): Use xg_get_single_format and new xtensa-isa.h
functions.  Handle invisible operands.
(tinsn_to_slotbuf): New.
(tinsn_check_arguments): Use new xtensa-isa.h functions.
(tinsn_from_chars): Add slot parameter.  Rewrite using xg_init_vinsn,
vinsn_from_chars, and xg_free_vinsn.
(tinsn_from_insnbuf): New.
(tinsn_immed_from_frag): Add slot parameter and handle multislot
instructions.  Handle symbol differences.
(get_num_stack_text_bytes): Use xg_get_single_size.
(xg_init_vinsn, xg_clear_vinsn, vinsn_has_specific_opcodes,
xg_free_vinsn, vinsn_to_insnbuf, vinsn_from_chars, expr_is_register,
get_expr_register, set_expr_symbol_offset_diff): New.
* config/tc-xtensa.h (MAX_SLOTS): Define.
(xtensa_relax_statesE): Move from tc-xtensa.c. Add
RELAX_CHECK_ALIGN_NEXT_OPCODE, RELAX_MAYBE_DESIRE_ALIGN, RELAX_SLOTS,
RELAX_FILL_NOP, RELAX_UNREACHABLE, RELAX_MAYBE_UNREACHABLE, and
RELAX_NONE types.
(RELAX_IMMED_MAXSTEPS): Move from tc-xtensa.c.
(xtensa_frag_type struct): Add is_assembly_state_set,
use_absolute_literals, relax_seen, is_unreachable, is_specific_opcode,
is_align, is_text_align, alignment, and is_first_loop_insn fields.
Replace is_generics and is_relax fields by is_no_transform field.
Delete is_text and is_longcalls fields.  Change text_expansion and
literal_expansion to arrays of MAX_SLOTS entries.  Add arrays of
per-slot information: literal_frags, slot_subtypes, slot_symbols,
slot_sub_symbols, and slot_offsets.  Add fr_prev field.
(xtensa_fix_data struct): New.
(xtensa_symfield_type struct): Delete plt field.
(xtensa_block_info struct): Move definition to tc-xtensa.h.  Add
forward declaration here.
(xt_section_type enum): Delete xt_insn_sec.  Add xt_prop_sec.
(XTENSA_SECTION_RENAME): Undefine.
(TC_FIX_TYPE, TC_INIT_FIX_DATA, TC_FORCE_RELOCATION, NO_PSEUDO_DOT,
tc_unrecognized_line, md_do_align, md_elf_section_change_hook,
HANDLE_ALIGN, TC_LINKRELAX_FIXUP, SUB_SEGMENT_ALIGN): Define.
(TC_CONS_FIX_NEW, tc_symbol_new_hook): Delete.
(unit_num_copies_func, opcode_num_units_func,
opcode_funcUnit_use_unit_func, opcode_funcUnit_use_stage_func): New.
(resource_table struct): New.
* config/xtensa-istack.h (MAX_INSN_ARGS): Increase from 6 to 10.
(TInsn struct): Add keep_wide, loc, fixup, record_fix, subtype,
literal_space, symbol, sub_symbol, offset, and literal_frag fields.
(tinsn_copy): Delete prototype.
(vliw_insn struct): New.
* config/xtensa-relax.c (insn_pattern_struct): Add options field.
(widen_spec_list): Add option conditions for density and boolean
instructions.  Add expansions using CONST16 and conditions for using
CONST16 vs. L32R.  Use new Xtensa LX RSR/WSR syntax.  Add entries for
predicted branches.
(simplify_spec_list): Add option conditions for density instructions.
Add entry for NOP instruction.
(append_transition): Add cmp function pointer parameter and use it to
insert the new entry in order.
(operand_function_LOW16U, operand_function_HI16U): New.
(xg_has_userdef_op_fn, xg_apply_userdef_op_fn): Handle
OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
(enter_opname, split_string): Use xstrdup instead of strdup.
(init_insn_pattern): Initialize new options field.
(clear_req_or_option_list, clear_req_option_list,
clone_req_or_option_list, clone_req_option_list, parse_option_cond):
New.
(parse_insn_pattern): Parse option conditions.
(transition_applies): New.
(build_transition): Use new xtensa-isa.h functions.  Fix incorrectly
swapped last arguments in calls to append_constant_value_condition.
Call clone_req_option_list.  Add warning about invalid opcode.
Handle LOW16U and HI16U function names.
(build_transition_table): Add cmp parameter and use it in calls to
append_transition.  Use new xtensa-isa.h functions.  Check
transition_applies before adding entries.
(xg_build_widen_table, xg_build_simplify_table): Add cmp parameter and
pass it through to build_transition_table.
* config/xtensa-relax.h (ReqOrOptionList, ReqOrOption, ReqOptionList,
ReqOption, transition_cmp_fn): New types.
(OpType enum): Add OP_OPERAND_LOW16U and OP_OPERAND_HI16U.
(transition_rule struct): Add options field.
* doc/as.texinfo (Overview): Update Xtensa options.
* doc/c-xtensa.texi (Xtensa Options): Delete --[no-]density,
--[no-]relax, and --[no-]generics options.  Update descriptions of
--text-section-literals and --[no-]longcalls.  Add
--[no-]absolute-literals and --[no-]transform.
(Xtensa Syntax): Add description of syntax for FLIX instructions.
Remove use of "generic" and "specific" terminology for opcodes.
(Xtensa Registers): Generalize the syntax description to include
user-defined register files.
(Xtensa Automatic Alignment): Update.
(Xtensa Branch Relaxation): Mention limitation of unconditional jumps.
(Xtensa Call Relaxation): Linker can now remove most of the overhead.
(Xtensa Directives): Remove confusing rules about precedence.
(Density Directive, Relax Directive): Delete.
(Schedule Directive): New.
(Generics Directive): Rename to ...
(Transform Directive): ... this node.
(Literal Directive): Update for absolute literals.  Missing
literal_position directive is now an error.
(Literal Position Directive): Update for absolute literals.
(Freeregs Directive): Delete.
(Absolute Literals Directive): New.
(Frame Directive): Minor editing.
* Makefile.am (DEPTC_xtensa_elf, DEPOBJ_xtensa_elf, DEP_xtensa_elf):
Update dependencies.
* Makefile.in: Regenerate.

gas/testsuite ChangeLog

* gas/xtensa/all.exp: Adjust expected error message for j_too_far.
Change entry_align test to expect an error.
* gas/xtensa/entry_misalign2.s: Use no-transform instead of
no-generics directives.

include ChangeLog

* xtensa-config.h (XSHAL_USE_ABSOLUTE_LITERALS,
XCHAL_HAVE_PREDICTED_BRANCHES, XCHAL_INST_FETCH_WIDTH): New.
(XCHAL_EXTRA_SA_SIZE, XCHAL_EXTRA_SA_ALIGN): Delete.
* xtensa-isa-internal.h (ISA_INTERFACE_VERSION): Delete.
(config_sturct struct): Delete.
(XTENSA_OPERAND_IS_REGISTER, XTENSA_OPERAND_IS_PCRELATIVE,
XTENSA_OPERAND_IS_INVISIBLE, XTENSA_OPERAND_IS_UNKNOWN,
XTENSA_OPCODE_IS_BRANCH, XTENSA_OPCODE_IS_JUMP,
XTENSA_OPCODE_IS_LOOP, XTENSA_OPCODE_IS_CALL,
XTENSA_STATE_IS_EXPORTED, XTENSA_INTERFACE_HAS_SIDE_EFFECT): Define.
(xtensa_format_encode_fn, xtensa_get_slot_fn, xtensa_set_slot_fn): New.
(xtensa_insn_decode_fn): Rename to ...
(xtensa_opcode_decode_fn): ... this.
(xtensa_immed_decode_fn, xtensa_immed_encode_fn, xtensa_do_reloc_fn,
xtensa_undo_reloc_fn): Update.
(xtensa_encoding_template_fn): Delete.
(xtensa_opcode_encode_fn, xtensa_format_decode_fn,
xtensa_length_decode_fn): New.
(xtensa_format_internal, xtensa_slot_internal): New types.
(xtensa_operand_internal): Delete operand_kind, inout, isPCRelative,
get_field, and set_field fields.  Add name, field_id, regfile,
num_regs, and flags fields.
(xtensa_arg_internal): New type.
(xtensa_iclass_internal): Change operands field to array of
xtensa_arg_internal.  Add num_stateOperands, stateOperands,
num_interfaceOperands, and interfaceOperands fields.
(xtensa_opcode_internal): Delete length, template, and iclass fields.
Add iclass_id, flags, encode_fns, num_funcUnit_uses, and funcUnit_uses.
(opname_lookup_entry): Delete.
(xtensa_regfile_internal, xtensa_interface_internal,
xtensa_funcUnit_internal, xtensa_state_internal,
xtensa_sysreg_internal, xtensa_lookup_entry): New.
(xtensa_isa_internal): Replace opcode_table field with opcodes field.
Change type of opname_lookup_table.  Delete num_modules,
module_opcode_base, module_decode_fn, config, and has_density fields.
Add num_formats, formats, format_decode_fn, length_decode_fn,
num_slots, slots, num_fields, num_operands, operands, num_iclasses,
iclasses, num_regfiles, regfiles, num_states, states,
state_lookup_table, num_sysregs, sysregs, sysreg_lookup_table,
max_sysreg_num, sysreg_table, num_interfaces, interfaces,
interface_lookup_table, num_funcUnits, funcUnits and
funcUnit_lookup_table fields.
(xtensa_isa_module, xtensa_isa_modules): Delete.
(xtensa_isa_name_compare): New prototype.
(xtisa_errno, xtisa_error_msg): New.
* xtensa-isa.h (XTENSA_ISA_VERSION): Define.
(xtensa_isa): Change type.
(xtensa_operand): Delete.
(xtensa_format, xtensa_regfile, xtensa_state, xtensa_sysreg,
xtensa_interface, xtensa_funcUnit, xtensa_isa_status,
xtensa_funcUnit_use): New types.
(libisa_module_specifier): Delete.
(xtensa_isa_errno, xtensa_isa_error_msg): New prototypes.
(xtensa_insnbuf_free, xtensa_insnbuf_to_chars,
xtensa_insnbuf_from_chars): Update prototypes.
(xtensa_load_isa, xtensa_extend_isa, xtensa_default_isa,
xtensa_insn_maxlength, xtensa_num_opcodes, xtensa_decode_insn,
xtensa_encode_insn, xtensa_insn_length,
xtensa_insn_length_from_first_byte, xtensa_num_operands,
xtensa_operand_kind, xtensa_encode_result,
xtensa_operand_isPCRelative): Delete.
(xtensa_isa_init, xtensa_operand_inout, xtensa_operand_get_field,
xtensa_operand_set_field, xtensa_operand_encode,
xtensa_operand_decode, xtensa_operand_do_reloc,
xtensa_operand_undo_reloc): Update prototypes.
(xtensa_isa_maxlength, xtensa_isa_length_from_chars,
xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
xtensa_isa_num_opcodes, xtensa_isa_num_regfiles, xtensa_isa_num_states,
xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
xtensa_format_get_slot, xtensa_format_set_slot, xtensa_opcode_decode,
xtensa_opcode_encode, xtensa_opcode_is_branch, xtensa_opcode_is_jump,
xtensa_opcode_is_loop, xtensa_opcode_is_call,
xtensa_opcode_num_operands, xtensa_opcode_num_stateOperands,
xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
xtensa_opcode_funcUnit_use, xtensa_operand_name,
xtensa_operand_is_visible, xtensa_operand_is_register,
xtensa_operand_regfile, xtensa_operand_num_regs,
xtensa_operand_is_known_reg, xtensa_operand_is_PCrelative,
xtensa_stateOperand_state, xtensa_stateOperand_inout,
xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
xtensa_regfile_lookup_shortname, xtensa_regfile_name,
xtensa_regfile_shortname, xtensa_regfile_view_parent,
xtensa_regfile_num_bits, xtensa_regfile_num_entries,
xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
xtensa_state_is_exported, xtensa_sysreg_lookup,
xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
xtensa_interface_num_bits, xtensa_interface_inout,
xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New prototypes.
* elf/xtensa.h (R_XTENSA_DIFF8, R_XTENSA_DIFF16, R_XTENSA_DIFF32,
R_XTENSA_SLOT*_OP, R_XTENSA_SLOT*_ALT): New relocations.
(XTENSA_PROP_SEC_NAME): Define.
(property_table_entry): Add flags field.
(XTENSA_PROP_*, GET_XTENSA_PROP_*, SET_XTENSA_PROP_*): Define.

ld ChangeLog

* ld.texinfo (Xtensa): Describe new linker relaxation to optimize
assembler-generated longcall sequences.  Describe new --size-opt
option.
* emulparams/elf32xtensa.sh (OTHER_SECTIONS): Add .xt.prop section.
* emultempl/xtensaelf.em (remove_section,
replace_insn_sec_with_prop_sec, replace_instruction_table_sections,
elf_xtensa_after_open): New.
(OPTION_OPT_SIZEOPT, OPTION_LITERAL_MOVEMENT,
OPTION_NO_LITERAL_MOVEMENT): Define.
(elf32xtensa_size_opt, elf32xtensa_no_literal_movement): New globals.
(PARSE_AND_LIST_LONGOPTS): Add size-opt and [no-]literal-movement.
(PARSE_AND_LIST_OPTIONS): Add --size-opt.
(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_OPT_SIZEOPT,
OPTION_LITERAL_MOVEMENT, and OPTION_NO_LITERAL_MOVEMENT.
(LDEMUL_AFTER_OPEN): Set to elf_xtensa_after_open.
* scripttempl/elfxtensa.sc: Update with changes from elf.sc.
* Makefile.am (eelf32xtensa.c): Update dependencies.
* Makefile.in: Regenerate.

ld/testsuite ChangeLog

* ld-xtensa/lcall1.s: Use .literal directive.
* ld-xtensa/lcall2.s: Align function entry.
* ld-xtensa/coalesce2.s: Likewise.

opcodes ChangeLog

* xtensa-dis.c (state_names): Delete.
(fetch_data): Use xtensa_isa_maxlength.
(print_xtensa_operand): Replace operand parameter with opcode/operand
pair.  Remove print_sr_name parameter.  Use new xtensa-isa.h functions.
(print_insn_xtensa): Use new xtensa-isa.h functions.  Handle multislot
instruction bundles.  Use xmalloc instead of malloc.

20 years ago * cygheap.h (class cygheap_user): Add psystemroot member and
Corinna Vinschen [Thu, 7 Oct 2004 21:28:57 +0000 (21:28 +0000)]
* cygheap.h (class cygheap_user): Add psystemroot member and
env_systemroot method.
* environ.cc (struct spenv): Add add_always member.
(spenvs): Accomodate new add_always member.  Add
cygheap_user::env_systemroot method to SYSTEMROOT entry.
(build_env): Check add_always member when adding missing environment
variables from spenvs.
* uinfo.cc (cygheap_user::env_systemroot): New method.

20 years ago * dcrt0.cc (dll_crt0_0): Drop duplicated line.
Corinna Vinschen [Thu, 7 Oct 2004 16:59:02 +0000 (16:59 +0000)]
* dcrt0.cc (dll_crt0_0): Drop duplicated line.

20 years agorevert erroneously applied change
Christopher Faylor [Thu, 7 Oct 2004 16:53:51 +0000 (16:53 +0000)]
revert erroneously applied change

20 years ago* spawn.cc (pthread_cleanup::oldmask): Default to invalid signal mask.
Christopher Faylor [Thu, 7 Oct 2004 16:49:30 +0000 (16:49 +0000)]
* spawn.cc (pthread_cleanup::oldmask): Default to invalid signal mask.
(do_cleanup): Test for invalid signal mask to decide whether to restore the
mask rather than assuming zero mask indicates that there is nothing to do.

20 years agoAdd linker option: --warn-shared-textrel to produce warnings when adding a
Nick Clifton [Thu, 7 Oct 2004 14:45:23 +0000 (14:45 +0000)]
Add linker option: --warn-shared-textrel to produce warnings when adding a
DT_TEXTREL to a shared object.

20 years agoAdd support for CRX co-processor opcodes
Nick Clifton [Thu, 7 Oct 2004 14:18:17 +0000 (14:18 +0000)]
Add support for CRX co-processor opcodes

20 years ago * fhandler_tty.cc (fhandler_tty_slave::read): Use previously
Corinna Vinschen [Thu, 7 Oct 2004 08:03:24 +0000 (08:03 +0000)]
* fhandler_tty.cc (fhandler_tty_slave::read): Use previously
evaluated time_to_wait value.

20 years ago * include/math.h (ashinh, asinhf, asinhl, acosh, acoshf, acoshl,
Danny Smith [Wed, 6 Oct 2004 20:31:32 +0000 (20:31 +0000)]
* include/math.h (ashinh, asinhf, asinhl, acosh, acoshf, acoshl,
atanh, atanhf, atanhl): Add prototypes.
* mingwex/Makefile.in (MATH_OBJS): Add objects for above to list.
(MATH_DISTFILES): Add sources for above and fastmath.h to list.
Specify dependency on fastmath.h for new objects.
* mingwex/math/fastmath.h: New file.
* mingwex/math/ashinh.c: New file.
* mingwex/math/asinhf.c: New file.
* mingwex/math/asinhl.c: New file.
* mingwex/math/acosh.c: New file.
* mingwex/math/acoshf.c: New file.
* mingwex/math/acoshl.c: New file.
* mingwex/math/atanh.c: New file.
* mingwex/math/atanhf.c: New file.
* mingwex/math/atanhl.c: New file.

20 years ago2004-10-06 Eric Christopher <echristo@redhat.com>
Eric Christopher [Wed, 6 Oct 2004 20:29:48 +0000 (20:29 +0000)]
2004-10-06  Eric Christopher  <echristo@redhat.com>

* dwarf2.h: Sync with gcc dwarf2.h. Fix typo.

20 years ago2004-10-06 Paolo Bonzini <bonzini@gnu.org>
Paolo Bonzini [Wed, 6 Oct 2004 10:15:24 +0000 (10:15 +0000)]
2004-10-06  Paolo Bonzini  <bonzini@gnu.org>

Fix wrong conflict resolution in:

2004-08-16  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.in: Regenerate.
* Makefile.tpl (Autogenerated `all-*' targets): Invoke $(TARGET-*)
in the recursive `make', instead of hardwiring `all'.
(Autogenerated TARGET-* variables): New.

20 years ago * strace.cc (_impure_ptr): Remove.
Corinna Vinschen [Wed, 6 Oct 2004 09:51:11 +0000 (09:51 +0000)]
* strace.cc (_impure_ptr): Remove.

20 years ago * cygcheck.cc (dump_sysinfo): Warn about empty path-components.
Corinna Vinschen [Wed, 6 Oct 2004 09:46:40 +0000 (09:46 +0000)]
* cygcheck.cc (dump_sysinfo): Warn about empty path-components.

20 years ago2004-10-05 Pierre Humblet <pierre.humblet@ieee.org>
Pierre Humblet [Wed, 6 Oct 2004 01:33:39 +0000 (01:33 +0000)]
2004-10-05  Pierre Humblet <pierre.humblet@ieee.org>

* external.cc (check_ntsec): Do not call wincap.has_security.
* path.cc (path_conv::check): Ditto.
* security.cc (get_object_attribute): Ditto.
(get_file_attribute): Ditto.

20 years ago2004-10-05 Tomer Levi <Tomer.Levi@nsc.com>
Jeff Johnston [Tue, 5 Oct 2004 20:00:53 +0000 (20:00 +0000)]
2004-10-05  Tomer Levi  <Tomer.Levi@nsc.com>

        * configure.in: Support crx-*-*.
        * configure: regenerate.
        * crx/_exit.c: New file.
        * crx/_getenv.c: Ditto.
        * crx/_rename: Ditto.
        * crx/close.c: Ditto.
        * crx/configure.in: Ditto.
        * crx/crti.S: Ditto.
        * crx/crtn.S: Ditto.
        * crx/crt0.S: Ditto.
        * crx/dvz_hndl.c: Ditto.
        * crx/flg_hndl.c: Ditto.
        * crx/fstat.c: Ditto.
        * crx/getpid.c: Ditto.
        * crx/iad_hndl.c: Ditto.
        * crx/intable.c: Ditto.
        * crx/isatty.c: Ditto.
        * crx/kill.c: Ditto.
        * crx/lseek.c: Ditto.
        * crx/Makefile.in: Ditto.
        * crx/open.c: Ditto.
        * crx/putnum.c: Ditto.
        * crx/read.c: Ditto.
        * crx/sbrk.c: Ditto.
        * crx/sim.ld: Ditto.
        * crx/stat.c: Ditto.
        * crx/svc_hndl.c: Ditto.
        * crx/time.c: Ditto.
        * crx/und_hndl.c: Ditto.
        * crx/unlink.c: Ditto.
        * crx/write.c: Ditto.

20 years ago2004-10-05 Tomer Levi <Tomer.Levi@nsc.com>
Jeff Johnston [Tue, 5 Oct 2004 19:44:24 +0000 (19:44 +0000)]
2004-10-05  Tomer Levi  <Tomer.Levi@nsc.com>

        * configure.host: Add support for crx.
        * libc/include/machine/ieeefp.h: Ditto.
        * libc/include/machine/setjmp.h: Ditto.
        * libc/machine/crx/Makefile.am: New file.
        * libc/machine/crx/configure.in: Ditto.
        * libc/machine/crx/setjmp.S: Ditto.
        * libc/machine/crx/getenv.c: Ditto.
        * libc/machine/crx/aclocal.m4: Generate.
        * libc/machine/crx/configure: Ditto.
        * libc/machine/crx/Makefile.in: Ditto.
        * libc/machine/crx/sys/asm.h: New file.
        * libc/machine/crx/sys/libh.h: Ditto.
        * libc/machine/crx/sys/syscall.h: Ditto.

20 years ago2004-10-05 Jeff Johnston <jjohnstn@redhat.com>
Jeff Johnston [Tue, 5 Oct 2004 19:34:25 +0000 (19:34 +0000)]
2004-10-05  Jeff Johnston  <jjohnstn@redhat.com>

        * Makefile.am (stmp-targ-include): Support sys header files
        from machine directories.
        * Makefile.in: Regenerated.

20 years agorevert erroneous checkin
Christopher Faylor [Tue, 5 Oct 2004 14:35:56 +0000 (14:35 +0000)]
revert erroneous checkin

20 years ago2004-10-05 Ulrich Weigand <uweigand@de.ibm.com>
Ulrich Weigand [Tue, 5 Oct 2004 13:34:42 +0000 (13:34 +0000)]
2004-10-05  Ulrich Weigand  <uweigand@de.ibm.com>

Merged from GCC / libtool upstream:
2004-10-02  P.J. Darcy  <darcypj@us.ibm.com>
* ltcf-c.sh (tpf*): Add ld_shlibs=yes.
* ltcf-cxx.sh (tpf*): Likewise.
* ltconfig (tpf*): Add TPF OS configuration support.

20 years ago* pinfo.cc (_pinfo::commune_send): Correct debugging output.
Christopher Faylor [Tue, 5 Oct 2004 02:10:15 +0000 (02:10 +0000)]
* pinfo.cc (_pinfo::commune_send): Correct debugging output.

20 years ago * bsd_mutex.cc (_msleep): Simplify event creation. Revert change from
Corinna Vinschen [Mon, 4 Oct 2004 19:44:05 +0000 (19:44 +0000)]
* bsd_mutex.cc (_msleep): Simplify event creation.  Revert change from
2004-08-24.  It should be unnecessary now.
* msg.cc (client_request_msg::serve): Release process critical
section as early as possible.
* sem.cc (client_request_sem::serve): Ditto.
* shm.cc (client_request_shm::serve): Ditto.
* process.cc: Use hold and release method calls instead of
EnterCriticalSection/LeaveCriticalSection calls throughout.
* process.h (_hold): Rename from hold.  Take filename and linenumber
parameter for logging.  Define matching hold macro.
(release): Ditto.

20 years ago2004-10-04 Jeff Johnston <jjohnstn@redhat.com>
Jeff Johnston [Mon, 4 Oct 2004 17:51:50 +0000 (17:51 +0000)]
2004-10-04  Jeff Johnston  <jjohnstn@redhat.com>

        * libc/stdio/vfscanf.c (__svfscanf_r): For int conversions,
        count skipped zero characters as part of the nread count for %n.
        * libc/machine/powerpc/vfscanf.c: Ditto.

20 years agofix erroneous checkin
Christopher Faylor [Mon, 4 Oct 2004 14:06:02 +0000 (14:06 +0000)]
fix erroneous checkin

20 years ago* include/cygwin/signal.h: Add siginterrupt definition.
Christopher Faylor [Mon, 4 Oct 2004 14:04:31 +0000 (14:04 +0000)]
* include/cygwin/signal.h: Add siginterrupt definition.

20 years ago * cygcheck.cc (pretty_id): Close pipe.
Corinna Vinschen [Mon, 4 Oct 2004 09:42:08 +0000 (09:42 +0000)]
* cygcheck.cc (pretty_id): Close pipe.

20 years ago2004-10-02 Pierre Humblet <pierre.humblet@ieee.org>
Pierre Humblet [Sat, 2 Oct 2004 02:20:21 +0000 (02:20 +0000)]
2004-10-02  Pierre Humblet <pierre.humblet@ieee.org>

* path.h (enum path_types): Delete PATH_ISDISK.
(path_conv::isdisk): Delete method.
(path_conv::set_isdisk): Ditto.
* path.cc (path_conv::check): Do not call set_isdisk.
* uinfo.cc(pwdgrp::load): Do not call pc.isdisk.

20 years agoThe patch below adds binutils support for the SHT_ARM_EXIDX, as defined by
Nick Clifton [Fri, 1 Oct 2004 12:59:35 +0000 (12:59 +0000)]
The patch below adds binutils support for the SHT_ARM_EXIDX, as defined by
 the ARM EABI.

20 years ago2004-01-01 Paul Brook <paul@codesourcery.com>
Paul Brook [Fri, 1 Oct 2004 11:37:17 +0000 (11:37 +0000)]
2004-01-01  Paul Brook  <paul@codesourcery.com>

* arm/configure.in: Add *-*-aebi target.
* arm/configure: Regenerate.

20 years ago * sysv_sem.cc: Update to FreeBSD version 1.69.
Corinna Vinschen [Fri, 1 Oct 2004 11:18:10 +0000 (11:18 +0000)]
* sysv_sem.cc: Update to FreeBSD version 1.69.
1.68: Reduce the overhead of semop() by using the kernel stack
instead of malloc'd memory to store the operations array if it
is small enough to fit.
1.69: Adjust the number of processes waiting on a semaphore properly
if we're woken up in the middle of sleeping.

20 years ago* how-using.texinfo: Fix typo. Add note about "Install For All Users"
Joshua Daniel Franklin [Thu, 30 Sep 2004 19:58:07 +0000 (19:58 +0000)]
* how-using.texinfo: Fix typo. Add note about "Install For All Users"

20 years agoEnable target-libgloss for crx-*-*.
Nick Clifton [Thu, 30 Sep 2004 16:34:36 +0000 (16:34 +0000)]
Enable target-libgloss for crx-*-*.

20 years agoApply Paul Brook's patch to implement armv6k instructions
Nick Clifton [Thu, 30 Sep 2004 16:21:43 +0000 (16:21 +0000)]
Apply Paul Brook's patch to implement armv6k instructions

20 years ago * include/winbase.h (WINBASEAPI): Define as DECLSPEC_IMPORT only
Danny Smith [Thu, 30 Sep 2004 09:08:17 +0000 (09:08 +0000)]
* include/winbase.h (WINBASEAPI): Define as DECLSPEC_IMPORT only
 if __W32API_USE_DLLIMPORT__ is defined.
* include/winuser.h (WINUSERAPI): Likewise.

20 years ago* how-using.texinfo: Add FAQ about network shares and authentication.
Joshua Daniel Franklin [Thu, 30 Sep 2004 05:19:27 +0000 (05:19 +0000)]
* how-using.texinfo: Add FAQ about network shares and authentication.

20 years ago2004-09-30 Joshua Daniel Franklin <joshuadfranklin@yahoo.com>
Joshua Daniel Franklin [Thu, 30 Sep 2004 05:03:52 +0000 (05:03 +0000)]
2004-09-30  Joshua Daniel Franklin  <joshuadfranklin@yahoo.com>

* how-programming.texinfo: Add gcj note to WinMain@16 FAQ.
* how-using.texinfo: Add FAQ about network shares and authentication.
* install.texinfo: Add "Where is make" to FAQ subtitle.

20 years ago * configure.in (--without-headers): Add missing double quotes.
Richard Sandiford [Wed, 29 Sep 2004 11:43:26 +0000 (11:43 +0000)]
* configure.in (--without-headers): Add missing double quotes.
* configure: Regenerate.

20 years ago2004-09-29 Filip Navara <xnavara@volny.cz>
Danny Smith [Tue, 28 Sep 2004 08:46:54 +0000 (08:46 +0000)]
2004-09-29  Filip Navara  <xnavara@volny.cz>

* include/ddk/(atm.h, batclass.h, cfg.h, cfgmgr32.h, d4drvif.h,
d4iface.h, ddkmapi.h, hidclass.h, hidpi.h, mcd.h, miniport.h,
mountdev.h, mountmgr.h, ndis.h, ndistapi.h, ndiswan.h, netpnp.h,
newdev.h, ntapi.h, ntdd8042.h, ntddbeep.h, ntddcdrm.h, ntddcdvd.h,
ntddchgr.h, ntdddisk.h, ntddkbd.h, ntddmou.h, ntddpar.h, ntddpcm.h,
ntddscsi.h, ntddser.h, ntddstor.h, ntddtape.h, ntddtdi.h,
ntddvdeo.h, ntddvol.h, ntpoapi.h, parallel.h, pfhook.h, poclass.h,
scsi.h, scsiscan.h, smbus.h, srb.h, storport.h, tdiinfo.h,
tdikrnl.h, tvout.h, upssvc.h, usb.h, usb100.h, usbdi.h, usbioctl.h,
usbiodef.h, usbscan.h, usbuser.h, videoagp.h, winddi.h, winddk.h,
winnt4.h, ws2san.h): Fixed packing.
* include/ddk/atm.h (ATM_TRAFFIC_DESCRIPTOR_IE): Fixed declaration.
* include/ddk/hidclass.h (HID_INTERFACE_HIDPARSE,
HID_INTERFACE_NOTIFY_PNP): Likewise.
* include/ddk/ndis.h (NDIS_DMA_BLOCK, CO_FLOW_PARAMETERS): Likewise.
(NdisQueryPacketLength): Added macro. Thanks to Art Yerkes
<ayerkes@speakeasy.net>.
* include/ddk/usb100.h (USB_CONFIGURATION_DESCRIPTOR): Fixed
declaration.
* include/ddk/winddi.h (PATHDATA, GLYPHPOS): Likewise.
* include/ddk/winddk.h (PDRIVER_CONTROL, PDRIVER_LIST_CONTROL,
PDRIVER_ADD_DEVICE, PIO_COMPLETION_ROUTINE, PDRIVER_CANCEL,
PKDEFERRED_ROUTINE, PDRIVER_DISPATCH, PIO_DPC_ROUTINE,
PMM_DLL_INITIALIZE, PMM_DLL_UNLOAD, PDRIVER_ENTRY,
PDRIVER_INITIALIZE, PKSERVICE_ROUTINE, PIO_TIMER_ROUTINE,
PDRIVER_REINITIALIZE, PDRIVER_STARTIO, PKSYNCHRONIZE_ROUTINE,
PDRIVER_UNLOAD, DRIVER_OBJECT): Fixed callback declarations.
(struct FILE_BASIC_INFORMATION): Renamed to _FILE_BASIC_INFORMATION.
(SYNCH_LEVEL): Added definition.
(KPCR, KPCR_TIB): Fixed declaration.
(Interlocked[Push/Pop]EntrySList): Declare only if winbase.h isn't
included and _WIN32_WINNT >= 0x0501.
(RtlEqualLuid): Fixed macro definition.
(KfLowerIrql, KfRaiseIrql): Declare and use instead of KeLowerIrql and
KeRaiseIrql on i386 architectures.

20 years ago* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Disallow attempts to set
Christopher Faylor [Tue, 28 Sep 2004 04:41:42 +0000 (04:41 +0000)]
* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Disallow attempts to set
the process group to a nonexistent process group.

20 years ago * lib/_cygwin_crt0_common.cc: Revert patch from 2004-09-16. Brakes
Corinna Vinschen [Mon, 27 Sep 2004 16:30:44 +0000 (16:30 +0000)]
* lib/_cygwin_crt0_common.cc: Revert patch from 2004-09-16.  Brakes
newly built DLLs.

20 years agoMerge from gcc:
DJ Delorie [Sat, 25 Sep 2004 00:26:33 +0000 (00:26 +0000)]
Merge from gcc:
2004-09-24  Zack Weinberg  <zack@codesourcery.com>
* warnings.m4: New file.

20 years agoSergey Ivanov <seriv@parkheights.dyndns.org>
Christopher Faylor [Fri, 24 Sep 2004 19:41:19 +0000 (19:41 +0000)]
Sergey Ivanov <seriv@parkheights.dyndns.org>
* path.cc (mount_info::read_cygdrive_info_from_registry): Default /cygdrive to
binary mode.

20 years ago2004-09-24 Jeff Johnston <jjohnstn@redhat.com>
Jeff Johnston [Fri, 24 Sep 2004 16:03:46 +0000 (16:03 +0000)]
2004-09-24  Jeff Johnston  <jjohnstn@redhat.com>

        * libc/stdio/local.h: Include <stdlib.h>.

20 years agoMerge from gcc
DJ Delorie [Fri, 24 Sep 2004 14:57:15 +0000 (14:57 +0000)]
Merge from gcc

20 years ago * ylwrap: Revert to previous version.
DJ Delorie [Fri, 24 Sep 2004 13:21:46 +0000 (13:21 +0000)]
 * ylwrap: Revert to previous version.

20 years ago * cygwinenv.sgml: smbntsec is not on by default.
Corinna Vinschen [Fri, 24 Sep 2004 09:47:10 +0000 (09:47 +0000)]
* cygwinenv.sgml: smbntsec is not on by default.

20 years ago * libc/stdio/fread.c (fread): Include <malloc.h>.
Corinna Vinschen [Fri, 24 Sep 2004 09:13:11 +0000 (09:13 +0000)]
* libc/stdio/fread.c (fread): Include <malloc.h>.

20 years ago2004-09-23 H.J. Lu <hongjiu.lu@intel.com>
H.J. Lu [Fri, 24 Sep 2004 00:40:22 +0000 (00:40 +0000)]
2004-09-23  H.J. Lu  <hongjiu.lu@intel.com>

* Makefile.tpl (REALLY_SET_LIB_PATH): Add @SET_GCC_LIB_PATH@.
(HOST_EXPORTS]): Add @SET_GCC_LIB_PATH@. Set and export
SET_GCC_LIB_PATH_CMD.
(BASE_TARGET_EXPORTS): Likewise.
* Makefile.in: Regenerated.

* configure.in (SET_GCC_LIB_PATH): Set and substitute.
* configure: Regenerated.

config/

2004-09-23  H.J. Lu  <hongjiu.lu@intel.com>

* gcc-lib-path.m4: New file.

20 years agoMerge from gcc
DJ Delorie [Thu, 23 Sep 2004 20:15:24 +0000 (20:15 +0000)]
Merge from gcc
2004-09-23  Kelley Cook  <kcook@gcc.gnu.org>
* config.guess: New upstream version
* compile, depcomp, install-sh, ylwrap: Likewise.

20 years agoMerge from gcc:
DJ Delorie [Thu, 23 Sep 2004 19:54:49 +0000 (19:54 +0000)]
Merge from gcc:
2004-09-23  Kelley Cook  <kcook@gcc.gnu.org>
* config.guess: New upstream version
* compile, depcomp, install-sh, ylwrap: Likewise.

2004-09-19  Roger Sayle  <roger@eyesopen.com>
* config/mh-x86omitfp: New host makefile fragment.  Add
-fomit-frame-pointer to the default BOOT_CFLAGS.
* configure.in: Use it to speed up bootstrap on some IA-32 hosts.
* configure: Regenerate.

2004-09-15  Andrew Pinski  <pinskia@physics.uc.edu>
PR target/11572
* configure.in (*-*-darwin*): Renable libobjc.
* configure: Regenerate.

20 years agoMerge from gcc
DJ Delorie [Thu, 23 Sep 2004 19:43:47 +0000 (19:43 +0000)]
Merge from gcc
2004-09-22  Kelley Cook  <kcook@gcc.gnu.org>
* gettext-sister.m4: Renamed from gettext.m4
* codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4, po.m4,
inttypes.m4, inttypes-pri.m4, inttypes_h.m4, lcmessage.m4, lib-ld.m4,
lib-link.m4, lib-prefix.m4, nls.m4, progtest.m4, stdint_h.m4,
uintmax_t.m4, ulonglong.m4: Import from gettext-0.12.1 sources.

20 years ago * sysv_shm.cc (kern_shmat): Avoid compiler warning.
Corinna Vinschen [Thu, 23 Sep 2004 14:16:54 +0000 (14:16 +0000)]
* sysv_shm.cc (kern_shmat): Avoid compiler warning.

20 years ago * dump_setup.cc (dump_setup): Remove unneeded strlen when check_files
Corinna Vinschen [Thu, 23 Sep 2004 10:32:20 +0000 (10:32 +0000)]
* dump_setup.cc (dump_setup): Remove unneeded strlen when check_files
is not set.

20 years ago2004-09-22 Pierre Humblet <pierre.humblet@ieee.org>
Pierre Humblet [Thu, 23 Sep 2004 00:32:08 +0000 (00:32 +0000)]
2004-09-22  Pierre Humblet <pierre.humblet@ieee.org>

* path.cc (normalize_win32_path): Only look for : in second position.
Avoid infinite loop with names starting in double dots.
(mount_info::conv_to_win32_path): Do not worry about a trailing dot.
(hash_path_name): Ditto.

20 years ago2004-09-22 Jeff Johnston <jjohnstn@redhat.com>
Jeff Johnston [Wed, 22 Sep 2004 21:22:07 +0000 (21:22 +0000)]
2004-09-22  Jeff Johnston  <jjohnstn@redhat.com>

        * libc/stdio/fread.c (fread):  For non-space-optimized case,
        add special code for unbuffered files to use user buffer and
        only require one low-level system read.

20 years ago * dump_setup.cc (dump_setup): Avoid trailing spaces on package-list.
Corinna Vinschen [Wed, 22 Sep 2004 11:50:51 +0000 (11:50 +0000)]
* dump_setup.cc (dump_setup): Avoid trailing spaces on package-list.

20 years ago * libc/machine/xscale/setjmp.S: New file, copied from
Ian Lance Taylor [Tue, 21 Sep 2004 18:41:02 +0000 (18:41 +0000)]
* libc/machine/xscale/setjmp.S: New file, copied from
libc/machine/arm/setjmp.S.
* libc/machine/xscale/Makefile.am (lib_a_SOURCES): Add setjmp.S.
* libc/machine/xscale/Makefile.in: Regenerate.

20 years ago * sysv_shm.cc (vm_object_reference): remove Cygwin specific define.
Corinna Vinschen [Tue, 21 Sep 2004 14:40:24 +0000 (14:40 +0000)]
* sysv_shm.cc (vm_object_reference): remove Cygwin specific define.
(vm_map_find): Ditto.
(vm_map_inherit): Ditto.
(kern_shmat): On Cygwin, take shmaddr just as is.  Don't call vm
system calls on Cygwin.  Add comment.

20 years ago* exceptions.cc (sig_handle_tty_stop): Set flag earlier.
Christopher Faylor [Mon, 20 Sep 2004 05:35:46 +0000 (05:35 +0000)]
* exceptions.cc (sig_handle_tty_stop): Set flag earlier.

20 years ago.
Christopher Faylor [Mon, 20 Sep 2004 05:31:17 +0000 (05:31 +0000)]
.

20 years ago* exceptions.cc (sig_handle_tty_stop): Set flag that we are in a cygwin
Christopher Faylor [Mon, 20 Sep 2004 04:58:36 +0000 (04:58 +0000)]
* exceptions.cc (sig_handle_tty_stop): Set flag that we are in a cygwin
function to avoid a probably erroneous stack walk.

20 years agobfd/
Paul Brook [Fri, 17 Sep 2004 12:35:00 +0000 (12:35 +0000)]
bfd/
* bfd-in.h (bfd_elf32_arm_set_target_relocs): Add prototype.
(bfd_elf32_arm_process_before_allocation): Update prototype.
* bfd-in2.h: Regenerate.
* bfd/elf32-arm.h (elf32_arm_link_hash_table): Add target2_reloc.
(elf32_arm_link_hash_table_create): Set it.
(bfd_elf32_arm_process_before_allocation): Remove target1_is_rel.
(bfd_elf32_arm_set_target_relocs): New function.
(arm_real_reloc_type): New function.
(elf32_arm_final_link_relocate): Use it.  Handle R_ARM_PREL31 and
R_ARM_GOT_PREL.  Remove R_ARM_TARGET1.
(elf32_arm_gc_sweep_hook): Ditto.
(elf32_arm_check_relocs): Ditto.
(elf32_arm_relocate_section): Handle R_ARM_GOT_PREL.
* elfarm-nabi.c (elf32_arm_howto_table): Add R_ARM_PREL31 and
R_ARM_GOT_TARGET2.
(elf32_arm_got_prel): New variable.
(elf32_arm_howto_from_type): New function.
(elf32_arm_info_to_howto): Use it.
(elf32_arm_reloc_map): Add BFD_RELOC_ARM_PREL31 and
BFD_RELOC_ARM_TARGET2.
* libbfd.h: Regenerate.
* reloc.c: Add BFD_RELOC_ARM_TARGET2 and BFD_RELOC_ARM_PREL31.
gas/
* config/tc-arm.c (s_arm_rel31): New funciton.
(md_pseudo_table): Add .rel31.
(md_apply_fix3): Handle BFD_RELOC_ARM_TARGET2,
BFD_RELOC_32_PCREL and BFD_RELOC_ARM_PREL31.
(tc_gen_reloc): Handle BFD_RELOC_ARM_PREL31 and BFD_RELOC_ARM_TARGET2.
(arm_fix_adjustable): Return 0 for BFD_RELOC_ARM_TARGET2.
(arm_parse_reloc): Add (target2).
gas/testsuite/
* gas/arm/pic.s: Add (target2).
* gas/arm/pic.d: Ditto.
include/
* elf/arm.h: Remove R_ARM_STKCHK and R_ARM_THM_STKCHK.
Add R_ARM_TARGET2, R_ARM_PREL31, R_ARM_GOT_ABS, R_ARM_GOT_PREL,
R_ARM_GOT_BREL12, R_ARM_GOTOFF12 and R_ARM_GOTRELAX.
ld/
* ld.texinfo: Rename arm-specific section.  Document --target*
* emulparams/armelf_fbsd.sh: Set TARGET2_TYPE.
* emulparams/armelf_linux.sh: Ditto.
* emulparams/armelf_nbsd.sh: Ditto.
* emultempl/armelf.em: Set default for TARGET2_TYPE.
(target2_type): New variable.
(arm_elf_before_allocation): Don't pass target1_type.
(arm_elf_create_output_section_statements): New function.
(PARSE_AND_LIST_PROLOGUE): Add OPTION_TARGET2.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add --target=.
(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_TARGET2.
(LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Set.
* emultempl/armelf_oabi.em (_before_allocation): Remove extra
argument to bfd_elf32_arm_process_before_allocation.
ld/testsuite/
* ld-arm/arm-target1-{abs,rel}.d}: New files.
* ld-arm/arm-target1.s: New file.
* ld-arm/arm-target2-{,got-}rel.d: New files.
* ld-arm/arm-target2.s: New file.
* ld-arm/arm-rel31.d: New files.
* ld-arm/arm-rel31.s: New files.
* ld-arm/arm.ld: New file.
* ld-arm/arm-elf.exp: Add new tests.

This page took 0.082108 seconds and 5 git commands to generate.