Corinna Vinschen
7584fa98d4
* autoload.cc (GetSystemTimePreciseAsFileTime): Define.
...
* times.cc (GetSystemTimePreciseAsFileTime): Temporarily declare here
to workaround missing definition in 32 bit w32api headers.
(get_system_time): New always inline function to call either
GetSystemTimePreciseAsFileTime or GetSystemTimeAsFileTime on a per OS
basis. Call throughout instead of GetSystemTimeAsFileTime.
* wincap.h (wincaps::has_precise_system_time): New element.
* wincap.cc: Implement above element throughout.
2013-06-14 15:41:17 +00:00
Corinna Vinschen
0ff057d5a5
Streamline time/times functionality. Remove last remains of former
...
Windows 9x compatibility.
* fhandler_disk_file.cc (fhandler_base::fstat_helper): Drop now unneeded
casts in calls to_timestruc_t.
(fhandler_base::utimens_fs): Ditto for timespec_to_filetime.
* fhandler_proc.cc (format_proc_stat): Ditto for to_time_t.
* hires.h (class hires_ms): Remove unused member initime_ns.
Remove declarations for timeGetTime_ns and prime.
(hires_ms::uptime): Remove.
* posix_ipc.cc (ipc_cond_timedwait): Ditto for timespec_to_filetime.
* fhandler_registry.cc (fhandler_registry::fstat): Add cast.
* resource.cc (fill_rusage): Call NtQueryInformationProcess rather than
GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME.
* times.cc: Simplify time handling. Throughout, use LARGE_INTEGER
rather than FILETIME to simplify computations. Throughout use
{u}int64_t rather than {unsigned} long long. Drop unneeded casts since
NSPERSEC is 64 bit anyway.
(systime_ns): Remove.
(times): Call NtQuerySystemInformation to fetch boot time. Call
NtQueryInformationProcess rather than GetProcessTimes to deal with
LARGE_INTEGER rather than FILETIME. Call GetSystemTimeAsFileTime.
(totimeval): Use constant 1000000 as in other functions.
(time_t_to_filetime): Remove.
(to_time_t): Change return type to time_t.
(time_as_timestruc_t): Rename filetime to systime.
(time): Ditto. Add cast.
(hires_ns::nsecs): Fix return type cast.
(hires_ms::timeGetTime_ns): Remove.
(hires_ns::prime): Remove.
(hires_ms::nsecs): Drop call to prime. Call GetSystemTimeAsFileTime
directly. Subtract FACTOR here since it's the only function needing
to do so.
(minperiod): Cosmetically change to ULONG.
(hires_ns::resolution): Fix return type cast.
(hires_ms::resolution): Simplify, rely on NtQueryTimerResolution.
* winsup.h: Align time related prototypes to above changes.
2013-06-14 09:09:41 +00:00
Corinna Vinschen
ba763af559
* net.cc (gen_old_if_name): New function to generate short interface
...
names for old pre-1.7 applications.
(get_ifs): Call gen_old_if_name for said old applications.
2013-06-13 19:37:14 +00:00
Corinna Vinschen
f06d6d2886
* posix.sgml (fcntl, flock, lockf): Point to implementation notes.
2013-06-13 12:50:28 +00:00
Corinna Vinschen
38f5296847
* README: Add description for NEWLIB's feature customizing
...
configuration options.
2013-06-13 11:43:44 +00:00
Sandra Loosemore
09b64ed336
2013-06-12 Sandra Loosemore <sandra@codesourcery.com>
...
include/opcode/
* nios2.h (OP_MATCH_ERET): Correct eret encoding.
gas/testsuite/
* gas/nios2/tret.d: Correct eret encoding.
2013-06-12 23:03:20 +00:00
Corinna Vinschen
0b8722c2db
* path.cc (normalize_posix_path): Fix long-standing problem which
...
allows to access files via ".." using an invalid POSIX path.
2013-06-12 17:45:42 +00:00
Corinna Vinschen
bb345ed147
* winver.rc (FileDescription): Remove (R).
2013-06-11 07:46:40 +00:00
Corinna Vinschen
8675d2e301
* sec_auth.cc (get_user_groups): Don't handle ERROR_ACCESS_DENIED as
...
error. Explain why.
2013-06-10 15:33:12 +00:00
Corinna Vinschen
e9c0122ec0
* libc/stdlib/gdtoa-gethex.c (__hexdig): Constify.
...
(hexdig_init): Remove.
(__hexdig_fun): New function.
hexdig_init, added __hexdig_fun
(gethex): Call __get_hexdig macro rather than hexdig.
* libc/stdlib/gdtoa-hexnan.c (hexnan): Constify fpi argument.
Call __get_hexdig macro rather than hexdig.
* libc/stdlib/ldtoa.c: Throughout constify functions arguments where
required by constifying the following arrays.
(ezero): Constify.
(eone): Constify.
(ermsg): Constify.
(etens): Constify.
(emtens): Constify.
(nan113): Constify.
(nan64): Constify.
(nan53): Constify.
(nan24): Constify.
* libc/stdlib/mprec.h (__get_hexdig): Define.
(gethex): Constify args in declaration where appropriate.
(hexnan): Ditto.
(hexdig_init): Remove declaration.
(__hexdig_fun): Declare.
* libc/stdlib/strtod.c (fpi): Constify.
(fpinan): Constify.
2013-06-10 15:27:43 +00:00
Christopher Faylor
d7e4267f45
clarify entry
2013-06-08 16:55:29 +00:00
Christopher Faylor
62003f180a
* exceptions.cc (try_to_debug): Don't use yield() when waiting for another
...
process.
(sigpacket::setup_handler): Fix long-standing problem where loop could exit
with lock held.
2013-06-08 16:54:41 +00:00
Christopher Faylor
1952976a1b
* miscfuncs.cc (yield): Revert (after researching) to calling SleepEx with 0.
...
We don't want to actually sleep when calling this function.
2013-06-08 16:39:52 +00:00
Christopher Faylor
1eaf9215cb
revert accidentally checked in files
2013-06-08 14:42:44 +00:00
Christopher Faylor
5d35299e51
* cygwait.cc (cygwait): Remove lock around sig retrieval since this code is
...
essentially guarded by thread-specific signal_arrived.
* exceptions.cc (_cygtls::handle_SIGCONT): Simplify. Eliminate lock/unlock
since code is guarded by signal_arrived.
2013-06-08 14:38:20 +00:00
Richard Sandiford
ebf488e1ab
gas/
...
2013-06-08 Catherine Moore <clm@codesourcery.com>
* config/tc-mips.c (is_opcode_valid): Build ASE mask.
(is_opcode_valid_16): Pass ase value to opcode_is_member.
(append_insn): Change INSN_xxxx to ASE_xxxx.
include/
2013-06-08 Catherine Moore <clm@codesourcery.com>
* opcode/mips.h (mips_opcode): Add ase field.
(INSN_ASE_MASK): Delete.
(INSN_DSP): Rename to ASE_DSP. Provide new value.
(INSN_DSPR2): Rename to ASE_DSPR2. Provide new value.
(INSN_MCU): Rename to ASE_MCU. Provide new value.
(INSN_MDMX): Rename to ASE_MDMX. Provide new value.
(INSN_MIPS3d): Rename to ASE_MIPS3D. Provide new value.
(INSN_MT): Rename to ASE_MT. Provide new value.
(INSN_SMARTMIPS): Rename to ASE_SMARTMIPS. Provide new value.
(INSN_VIRT): Rename to ASE_VIRT. Provide new value.
(INSN_VIRT64): Rename to ASE_VIRT64. Provide new value.
(opcode_is_member): Add ase argument. Check ase.
opcodes/
2013-06-08 Catherine Moore <clm@codesourcery.com>
Richard Sandiford <rdsandiford@googlemail.com>
* micromips-opc.c (D32, D33, MC): Update definitions.
(micromips_opcodes): Initialize ase field.
* mips-dis.c (mips_arch_choice): Add ase field.
(mips_arch_choices): Initialize ase field.
(set_default_mips_dis_options): Declare and setup mips_ase.
* mips-opc.c (M3D, SMT, MX, IVIRT, IVIRT64, D32, D33, D64,
MT32, MC): Update definitions.
(mips_builtin_opcodes): Initialize ase field.
2013-06-08 10:22:55 +00:00
Corinna Vinschen
2f78d07f49
* winver.rc (LegalCopyright): Belatedly bump to 2013.
2013-06-07 19:07:05 +00:00
Will Newton
0d284dd0c1
aarch64: Add support for GNU indirect functions.
...
Add support for STT_GNU_IFUNC symbols to the AArch64 bfd backend. The tests
are ported from the ld-ifunc tests but are enabled for cross builds so can
be run easily without hardware or a simulator.
bfd/ChangeLog:
2013-06-07 Will Newton <will.newton@linaro.org>
* configure: Regenerate.
* configure.in: Build elf-ifunc.o for AArch64.
* elf64-aarch64.c: Include objalloc.h.
(elf64_aarch64_howto_dynrelocs): Add R_AARCH64_IRELATIVE howto.
(struct elf64_aarch64_link_hash_table): Add members for handling
R_AARCH64_IRELATIVE relocations.
(elf_aarch64_local_htab_hash): New function.
(elf_aarch64_local_htab_eq): New function.
(elf_aarch64_get_local_sym_hash): New function.
(elf64_aarch64_link_hash_table_create): Initialize local STT_GNU_IFUNC
symbol hash.
(elf64_aarch64_hash_table_free): Free local STT_GNU_IFUNC symbol hash.
(elf64_aarch64_final_link_relocate): Add sym argument. Add support
for handling STT_GNU_IFUNC symbols.
(elf64_aarch64_gc_sweep_hook): Add support for garbage collecting
references to STT_GNU_IFUNC symbols.
(elf64_aarch64_adjust_dynamic_symbol): Add support for handling
STT_GNU_IFUNC symbols.
(elf64_aarch64_check_relocs): Add support for handling STT_GNU_IFUNC
symbols. Ensure we don't increase plt.refcount from -1 to 0.
(elf64_aarch64_post_process_headers): Call _bfd_elf_set_osabi.
(elf64_aarch64_is_function_type): Remove function.
(elf64_aarch64_allocate_dynrelocs): Call
_bfd_elf_allocate_ifunc_dyn_relocs for STT_GNU_IFUNC symbols.
(elf_aarch64_allocate_local_dynrelocs): New function.
(elf64_aarch64_size_dynamic_sections): Call
elf_aarch64_allocate_local_dynrelocs. Initialize next_irelative_index.
(elf64_aarch64_create_small_pltn_entry): Add info argument.
Add support for creating .iplt entries for STT_GNU_IFUNC symbols.
(elf64_aarch64_finish_dynamic_symbol): Add support for handling
STT_GNU_IFUNC symbols and .iplt.
(elf_aarch64_finish_local_dynamic_symbol): New function.
(elf64_aarch64_finish_dynamic_sections): Call
elf_aarch64_finish_local_dynamic_symbol.
(elf64_aarch64_add_symbol_hook): New function.
include/elf/ChangeLog:
2013-06-07 Will Newton <will.newton@linaro.org>
* aarch64.h: Add R_AARCH64_IRELATIVE reloc.
ld/ChangeLog:
2013-06-07 Will Newton <will.newton@linaro.org>
* emulparams/aarch64elf.sh: Add IREL_IN_PLT.
ld/testsuite/ChangeLog:
2013-06-07 Will Newton <will.newton@linaro.org>
* ld-ifunc/ifunc.exp: Enable ifunc tests for AArch64.
* ld-aarch64/aarch64-elf.exp: Add ifunc tests.
* ld-aarch64/ifunc-1-local.d: New file.
* ld-aarch64/ifunc-1-local.s: Likewise.
* ld-aarch64/ifunc-1.d: Likewise.
* ld-aarch64/ifunc-1.s: Likewise.
* ld-aarch64/ifunc-10.d: Likewise.
* ld-aarch64/ifunc-10.s: Likewise.
* ld-aarch64/ifunc-11.d: Likewise.
* ld-aarch64/ifunc-11.s: Likewise.
* ld-aarch64/ifunc-12.d: Likewise.
* ld-aarch64/ifunc-12.s: Likewise.
* ld-aarch64/ifunc-13.d: Likewise.
* ld-aarch64/ifunc-13a.s: Likewise.
* ld-aarch64/ifunc-13b.s: Likewise.
* ld-aarch64/ifunc-14a.d: Likewise.
* ld-aarch64/ifunc-14a.s: Likewise.
* ld-aarch64/ifunc-14b.d: Likewise.
* ld-aarch64/ifunc-14b.s: Likewise.
* ld-aarch64/ifunc-14c.d: Likewise.
* ld-aarch64/ifunc-14c.s: Likewise.
* ld-aarch64/ifunc-14d.d: Likewise.
* ld-aarch64/ifunc-14e.d: Likewise.
* ld-aarch64/ifunc-14f.d: Likewise.
* ld-aarch64/ifunc-15.d: Likewise.
* ld-aarch64/ifunc-15.s: Likewise.
* ld-aarch64/ifunc-16.d: Likewise.
* ld-aarch64/ifunc-16.s: Likewise.
* ld-aarch64/ifunc-17a.d: Likewise.
* ld-aarch64/ifunc-17a.s: Likewise.
* ld-aarch64/ifunc-17b.d: Likewise.
* ld-aarch64/ifunc-17b.s: Likewise.
* ld-aarch64/ifunc-18a.d: Likewise.
* ld-aarch64/ifunc-18a.s: Likewise.
* ld-aarch64/ifunc-18b.d: Likewise.
* ld-aarch64/ifunc-18b.s: Likewise.
* ld-aarch64/ifunc-19a.d: Likewise.
* ld-aarch64/ifunc-19a.s: Likewise.
* ld-aarch64/ifunc-19b.d: Likewise.
* ld-aarch64/ifunc-19b.s: Likewise.
* ld-aarch64/ifunc-2-local.d: Likewise.
* ld-aarch64/ifunc-2-local.s: Likewise.
* ld-aarch64/ifunc-2.d: Likewise.
* ld-aarch64/ifunc-2.s: Likewise.
* ld-aarch64/ifunc-20.d: Likewise.
* ld-aarch64/ifunc-20.s: Likewise.
* ld-aarch64/ifunc-3.s: Likewise.
* ld-aarch64/ifunc-3a.d: Likewise.
* ld-aarch64/ifunc-3b.d: Likewise.
* ld-aarch64/ifunc-4.d: Likewise.
* ld-aarch64/ifunc-4.s: Likewise.
* ld-aarch64/ifunc-4a.d: Likewise.
* ld-aarch64/ifunc-5-local.s: Likewise.
* ld-aarch64/ifunc-5.s: Likewise.
* ld-aarch64/ifunc-5a-local.d: Likewise.
* ld-aarch64/ifunc-5a.d: Likewise.
* ld-aarch64/ifunc-5b-local.d: Likewise.
* ld-aarch64/ifunc-5b.d: Likewise.
* ld-aarch64/ifunc-5r-local.d: Likewise.
* ld-aarch64/ifunc-6.s: Likewise.
* ld-aarch64/ifunc-6a.d: Likewise.
* ld-aarch64/ifunc-6b.d: Likewise.
* ld-aarch64/ifunc-7.s: Likewise.
* ld-aarch64/ifunc-7a.d: Likewise.
* ld-aarch64/ifunc-7b.d: Likewise.
* ld-aarch64/ifunc-8.d: Likewise.
* ld-aarch64/ifunc-8a.s: Likewise.
* ld-aarch64/ifunc-8b.s: Likewise.
* ld-aarch64/ifunc-9.d: Likewise.
* ld-aarch64/ifunc-9.s: Likewise.
2013-06-07 18:57:00 +00:00
Christopher Faylor
da6461a4d5
* exceptions.cc (_cygtls::handle_SIGCONT): Reinstate previous behavior but make
...
sure that yield() isn't called when signal stack is locked.
2013-06-07 17:09:56 +00:00
Christopher Faylor
0f38043d8b
* exceptions.cc (exception::handle): Add comment explaining si_addr behavior.
2013-06-07 16:05:12 +00:00
Christopher Faylor
9791177448
* DevNotes: Add entry cgf-000023.
...
* sigproc.cc (exit_thread): Remove now-unneeded sleep code.
2013-06-07 15:37:11 +00:00
Corinna Vinschen
7eed26ae5b
Fix typos
2013-06-07 14:21:53 +00:00
Corinna Vinschen
34ec6f665b
* include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 21.
2013-06-07 09:21:53 +00:00
Corinna Vinschen
af9f65e0c4
* libc/include/cdefs.h (__has_extension): New define.
...
(__has_feature): Likewise.
(__has_include): Likewise.
(__has_builtin): Likewise.
* libc/include/stdatomic.h: New.
2013-06-07 09:14:39 +00:00
Corinna Vinschen
6c860dfd25
* posix.sgml (std-notes): Fix typo.
2013-06-07 08:43:01 +00:00
Corinna Vinschen
000e74dfd5
* fhandler_disk_file.cc (fhandler_disk_file::pread): Skip to non-atomic
...
code if mandatory locking is used on this descriptor. Explain why.
(fhandler_disk_file::pwrite): Ditto.
* posix.sgml (std-notes): Extend description of file locking.
2013-06-07 08:28:25 +00:00
Maciej W. Rozycki
fc316f3a8e
* mips.h (ELF_ST_SET_MIPS_PIC): Clear any STO_MIPS16 setting.
2013-06-06 22:09:07 +00:00
Corinna Vinschen
8b7f83e68f
*** empty log message ***
2013-06-06 15:31:15 +00:00
Corinna Vinschen
b3f0fb6baa
* exceptions.cc (_cygtls::handle_SIGCONT): Simplify loop waiting for
...
sig_handle_tty_stop to wake up. Make sure to unlock before calling
yield to avoid starvation of sig_handle_tty_stop. Add comments.
* miscfuncs.cc (yield): Explain why yield should never be called under
_cygtls::lock conditions. Call SleepEx with 1ms timeout. Explain why.
2013-06-06 15:29:41 +00:00
Corinna Vinschen
925e1c8157
* libc/machine/arm/strcmp.S: Use local labels.
2013-06-05 09:41:21 +00:00
Corinna Vinschen
aa6aee7dd7
* include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 20.
2013-06-05 09:37:53 +00:00
Corinna Vinschen
111af357c2
* faq-copyright.xml: Fix link to license.
...
* faq-using.xml: Ditto.
* faq-what.xml: Ditto.
2013-06-05 09:36:58 +00:00
Corinna Vinschen
47b7ed597c
* faq-programming.xml: Convert url to refer to new flat faq.html file.
...
* faq-setup.xml: Ditto.
* faq-using.xml: Ditto.
* highlights.xml: Ditto.
2013-06-05 07:57:39 +00:00
Corinna Vinschen
338a3e8b15
* new-features.xml (ov-new1.7.19): Revert mandatory locking support to
...
"preliminary".
2013-06-05 07:23:07 +00:00
Corinna Vinschen
0ec4e9966a
*** empty log message ***
2013-06-05 07:21:56 +00:00
Corinna Vinschen
c0096b6069
* Makefile.in: Add rule to rebuild Makefile if Makefile.in changes.
...
Include Makefile.dep last.
(Makefile.dep): Run xidepend within source dir. Temporarily drop
faq.xml from dependencies.
* xidepend: Fix creating base filename to accommodate VPATH.
2013-06-04 11:50:41 +00:00
Corinna Vinschen
a0238d7084
* new-features.xml (ov-new1.7.19): Align mandatory locking text to
...
today's changes.
2013-06-04 11:14:34 +00:00
Corinna Vinschen
edd73646f3
* fhandler.cc (fhandler_base::lock): Move to flock.cc.
...
(fhandler_base::fixup_after_exec): Reset mandatory_locking.
* fhandler.h (class fhandler_base): Add mandatory_locking status flag.
Add mandatory_locking accessor methods. Accommodate change throughout.
(fhandler_base::mand_lock): Declare.
(class fhandler_disk_file): Drop in favor of new status flag.
* (fhandler_disk_file::fcntl): Call need_fork_fixup if mandatory_locking
flag gets set.
* flock.cc (fhandler_base::lock): Define here.
(flock): Handle mandatory_locking.
(lockf): Ditto.
(fhandler_base::mand_lock): Define.
2013-06-04 10:24:43 +00:00
Richard Earnshaw
ca1dd3a9b5
2013-06-03 Joey Ye <joey.ye@arm.com>
...
* libc/machine/arm/Makefile.am (MEMCPY_DEP): New define.
($(lpfx)memcpy.o, $(lpfx)memcpy.obj): Depend on MEMCPY_DEP.
* libc/machine/arm/Makefile.in: Regenerated.
* newlib/libc/machine/arm/memcpy-stub.c: Exclude armv7-m/armv7e-m.
* newlib/libc/machine/arm/memcpy-armv7m.S: New.
* newlib/libc/machine/arm/memcpy.S: Replace with wrapper code. Old
code moved to ...
* newlib/libc/machine/arm/memcpy-armv7a.S: ... here. Remove
redundant architecture check.
2013-06-03 14:02:10 +00:00
Corinna Vinschen
86c126b6e3
*** empty log message ***
2013-06-03 10:40:41 +00:00
Corinna Vinschen
69154cfd6b
* sigproc.cc (exit_thread): Allow to exit the thread while running
...
global dtors. Explain why.
2013-06-03 09:48:54 +00:00
Corinna Vinschen
8516b54215
Fix typo
2013-06-02 10:50:57 +00:00
Corinna Vinschen
40cc0986e3
* new-features.xml (ov-new1.7.19): Add mandatory locking.
2013-06-02 10:22:56 +00:00
Corinna Vinschen
a24ad2c346
* autoload.cc (CancelSynchronousIo): Define.
...
* fcntl.cc (fcntl64): Drop handling of locking commands.
* fhandler.h (class fhandler_disk_file): Add mandatory_locking.
(fhandler_disk_file::fcntl): Declare.
(fhandler_disk_file::mand_lock): Declare.
* fhandler_disk_file.cc (fhandler_disk_file::fhandler_disk_file):
Initialize mandatory_locking.
(fhandler_disk_file::fcntl): New method. Handle F_LCK_MANDATORY and
locking commands.
(fhandler_disk_file::dup): Duplicate mandatory_locking. Fix a bug
when duplicating prw_handle failed.
(fhandler_disk_file::fixup_after_fork): Reset mandatory_locking.
* flock.cc (fhandler_disk_file::lock): Add comment.
(struct lock_parms): New struct to pass parameters to blocking_lock_thr
thread function.
(blocking_lock_thr): New thread function.
(fhandler_disk_file::mand_lock): New methof implementing mandatory
locking with Windows semantics.
* ntdll.h (NtLockFile): Declare.
(NtUnlockFile): Declare.
* include/fcntl.h: Fix a comment.
(F_LCK_MANDATORY): Define. Add lengthy comment to explain.
2013-06-02 10:22:14 +00:00
Corinna Vinschen
fa35814af1
* exceptions.cc (exception::handle): Resurrect accidentally lost
...
patch from 2009-07-22: Set si_addr according to POSIX for SIGSEGV.
2013-06-02 09:11:09 +00:00
Denis Chertykov
01ab5147dd
* gas/config/tc-avr.c: Change ISA for devices with USB support to
...
AVR_ISA_XMEGAU
* include/opcode/avr.h: Rename AVR_ISA_XCH to AVR_ISA_RMW. Remove
from AVR_ISA_XMEGA and add new AVR_ISA_XMEGAU
2013-06-01 07:14:44 +00:00
Corinna Vinschen
cd9ca871b0
* include/sys/socket.h: Move SHUT_xx definitoins from here...
...
* include/cygwin/socket.h: ...to here.
2013-05-31 18:08:25 +00:00
Corinna Vinschen
697ce3c45f
*** empty log message ***
2013-05-31 08:41:39 +00:00
Corinna Vinschen
9fccd63bc3
* include/cygwin/if.h: Include cygwin/socket.h rather than sys/socket.h
...
to avoid circular dependency resulting in bogus compile time warnings.
2013-05-31 08:40:35 +00:00
Jeff Johnston
d15bce48e7
2013-05-30 Jeff Johnston <jjohnstn@redhat.com>
...
* libc/machine/powerpc/times.c: Moved to libgloss/rs6000.
* libc/machine/powerpc/Makefile.am: Remove times.c.
* libc/machine/powerpc/Makefile.in: Regenerated.
2013-05-30 22:44:41 +00:00