55c20b09b7
bfd
...
* Makefile.am (ALL_MACHINES): Add cpu-rx.lo.
(ALL_MACHINES_CFILES): Add cpu-rx.c.
(BFD32_BACKENDS): Add elf32-rx.lo.
(BFD32_BACKENDS_CFILES): Add elf32-rx.c.
* archures.c (bfd_architecture): Add bfd_arch_rx and bfd_mach_rx.
Export bfd_rx_arch.
(bfd_archures_list): Add bfd_rx_arch.
* config.bfd: Add entry for rx-*-elf.
* configure.in: Add entries for bfd_elf32_rx_le_vec and
bfd_elf32_rx_be_vec.
* reloc.c: Add RX relocations.
* targets.c: Add RX target vectors.
* Makefile.in: Regenerate.
* bfd-in2.h: Regenerate.
* configure: Regenerate.
* libbfd.h: Regenerate.
* cpu-rx.c: New file.
* elf32-rx.c: New file.
binutils
* readelf.c: Add support for RX target.
* MAINTAINERS: Add DJ and NickC as maintainers for RX.
gas
* Makefile.am: Add RX target.
* configure.in: Likewise.
* configure.tgt: Likewise.
* read.c (do_repeat_with_expander): New function.
* read.h: Provide a prototype for do_repeat_with_expander.
* doc/Makefile.am: Add RX target documentation.
* doc/all.texi: Likewise.
* doc/as.texinfo: Likewise.
* Makefile.in: Regenerate.
* NEWS: Mention support for RX architecture.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* config/rx-defs.h: New file.
* config/rx-parse.y: New file.
* config/tc-rx.h: New file.
* config/tc-rx.c: New file.
* doc/c-rx.texi: New file.
gas/testsuite
* gas/rx: New directory.
* gas/rx/*: New set of test cases.
* gas/elf/section2.e-rx: New expected output file.
* gas/all/gas.exp: Add support for RX target.
* gas/elf/elf.exp: Likewise.
* gas/lns/lns.exp: Likewise.
* gas/macros/macros.exp: Likewise.
include
* dis-asm.h: Add prototype for print_insn_rx.
include/elf
* rx.h: New file.
include/opcode
* rx.h: New file.
ld
* Makefile.am: Add rules to build RX emulation.
* configure.tgt: Likewise.
* NEWS: Mention support for RX architecture.
* Makefile.in: Regenerate.
* emulparams/elf32rx.sh: New file.
* emultempl/rxelf.em: New file.
opcodes
* Makefile.am: Add RX files.
* configure.in: Add support for RX target.
* disassemble.c: Likewise.
* Makefile.in: Regenerate.
* configure: Regenerate.
* opc2c.c: New file.
* rx-decode.c: New file.
* rx-decode.opc: New file.
* rx-dis.c: New file.
2009-09-29 14:17:13 +00:00
4abcdf2717
* fhandler_socket.cc (fhandler_socket::recv_internal): Always call
...
WSARecv on SOCK_STREAM sockets.
2009-09-29 08:46:29 +00:00
c38ed7c697
2009-09-28 Michael Eager <eager@eagercon.com>
...
* configure.in: Add microblaze-*-*.
* configure: Add microblaze-*-* (not regenerated.)
* microblaze: NEW microblaze target directory.
* microblaze/configure.in: NEW.
* microblaze/configure: Generate.
* microblaze/Makefile.in: NEW.
* microblaze/{crt0.S, crt1.S, crt2.S, crt3.S, crt4.S, crtinit.S}: NEW.
* microblaze/{pgcrtinit.S, _program_clean.S, _program_init.S,
sbrk.c, sim-crtinit.S, sim-pgcrtinit.S, timer.c, _exception_handler.S,
_hw_exception_handler.S, _interrupt_handler.S, xil_malloc.c,
nnxil_printf.c, xil_sbrk.c: NEW.
* microblaze/xilinx.ld: NEW.
2009-09-28 16:43:57 +00:00
6c249577fb
2009-09-28 Michael Eager <eager@eagercon.com>
...
* configure.host: Add microblaze.
* libc/include/machine/ieeefp.h [MICROBLAZE]: Define __IEEE_BIG_ENDIAN.
* libc/include/machine/setjmp.h [MICROBLAZE]: Define _JBLEN, _JBTYPE.
* libc/include/sys/config.h [MICROBLAZE]: Define _REENT_SMALL,
_UNIX98_THREAD_MUTEX_ATTRIBUTES.
* libc/include/sys/types.h: Treat XMK like rtems, define
PTHREAD_MUTEX_NORMAL, PTHREAD_MUTEX_ERRORCHECK, PTHREAD_MUTEX_RECURSIVE,
PTHREAD_MUTEX_DEFAULT, PTHREAD_STACK_MIN, define stuct pthread_attr_s.
* libc/machine/configure.in: Add microblaze.
* libc/machine/configure: Add microblaze (not regenerated).
* libc/machine/microblaze/configure.in: NEW.
* libc/machine/microblaze/configure: Generate.
* libc/machine/microblaze/Makefile.am: NEW.
* libc/machine/microblaze/Makefile.in: Generate.
* libc/machine/microblaze/{abort.c, strcmp.c, strcpy.c, strlen.c,
mallocr.c, longjmp.S, setjmp.S}: NEW.
* libc/stdlib/mallocr.c [MICROBLAZE]: Don't declare sbrk prototype,
mALLOc(): return malloc value.
2009-09-28 16:42:21 +00:00
587b75f7bd
* fhandler.h (class dev_console): Constify charset parameter of
...
str_to_con.
* fhandler_console.cc (dev_console::con_to_str): Simplify. Always
default to the current internal locale.
(dev_console::get_console_cp): Always use codepage 437 for alternate
charset.
(dev_console::str_to_con): Constify charset parameter.
(fhandler_console::write_normal): Always use codepage 437 for alternate
charset. Otherwise always default to the current internal locale.
Replace ASCII SO with ASCII CAN.
* strfuncs.cc: Tweka comments according to below changes.
(sys_cp_wcstombs): Constify charset parameter. Convert all wchar_t
values in the Unicode private use area U+F0xx to the singlebyte
counterpart. Drop special handling creating ASCII SO sequence from
U+DCxx value. Rearrange for performance. Replace ASCII SO with
ASCII CAN.
(sys_cp_mbstowcs): Constify charset parameter. Replace ASCII SO with
ASCII CAN. Drop special case for U+DCxx ASCII SO sequences. Always
create a replacement from the Unicode private use area U+F0xx for
invalid byte values in a multibyte sequence. Do the same for wchar_t
values from the U+F0xx range to make them roundtrip safe.
* wchar.h (sys_cp_wcstombs): Constify charset parameter.
(sys_cp_mbstowcs): Ditto.
2009-09-28 12:10:32 +00:00
d856640e1c
* cygheap.cc (cygheap_init): Default locale.charset to "UTF-8".
...
* dcrt0.cc (dll_crt0_1): Call setlocale (LC_CTYPE, "") here, just
before resetting application locale to "C".
* environ.cc (environ_init): Drop code setting locale here.
* syscalls.cc (check_codepage): Break out check for required codepage
from internal_setlocale.
(internal_setlocale): Just convert CWD and $PATH from old charset to
new charset and set internal charset.
(setlocale): Change accordingly. Don't require LC_ALL or LC_CTYPE to
store old locale value. Always call internal_setlocale if charset
changed due to locale environment changes.
2009-09-28 10:43:49 +00:00
a58d484bcf
* libc/locale/locale.c (lc_ctype_charset): Set to "UTF-8" on Cygwin.
...
(lc_message_charset): Ditto.
(loadlocale): Set charset of the "C" locale to "UTF-8" on Cygwin.
* libc/stdlib/mbtowc_r.c (__mbtowc): Default to __utf8_mbtowc on
Cygwin.
* libc/stdlib/wctomb_r.c (__wctomb): Default to __utf8_wctomb on
Cygwin.
2009-09-27 12:21:16 +00:00
7677a6b206
* new-features.sgml (ov-new1.7-file): Mention fexecve, execvpe.
2009-09-26 21:01:59 +00:00
15e9ecd14a
Add fexecve, execvpe.
...
* exec.cc (fexecve): New function.
* cygwin.din (execvpe, fexecve): Export new fexecve and existing
execvpe.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* posix.sgml: Mention them.
2009-09-26 21:01:10 +00:00
b14f894fd1
* libc/include/sys/unistd.h (execvpe, fexecve) [__CYGWIN__]:
...
Add declarations.
2009-09-26 20:59:54 +00:00
52dba6a5c4
Fix some POSIX-compliance bugs in link, rename, mkdir.
...
* syscalls.cc (link): Delete obsolete comment. Reject directories
and missing source up front.
(rename): Use correct errno for trailing '.'. Detect empty
strings. Allow trailing slash to newpath iff oldpath is
directory.
* dir.cc (mkdir): Reject dangling symlink with trailing slash.
* fhandler_disk_file.cc (fhandler_disk_file::link): Reject
trailing slash.
* fhandler.cc (fhandler_base::link): Match Linux errno.
2009-09-26 15:51:53 +00:00
1e6459d3e5
merge from gcc
2009-09-26 00:01:16 +00:00
65d436509b
* libc/include/sys/unistd.h (eaccess, euidaccess) [__CYGWIN__]:
...
Add declarations.
2009-09-25 23:57:09 +00:00
76fe91b90b
* new-features.sgml (ov-new1.7-file): Mention eaccess, euidaccess,
...
canonicalize_file_name, and document change in access semantics.
2009-09-25 23:56:18 +00:00
2bf78f0928
Provide euidaccess, canonicalize_file_name; fix fchmodat.
...
* syscalls.cc (fchmodat): lchmod is not yet implemented.
(euidaccess): New function.
* path.cc (realpath): Update comment.
(canonicalize_file_name): New function.
* include/cygwin/stdlib.h (canonicalize_file_name): Declare it.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
* cygwin.din: Export canonicalize_file_name, eaccess, euidaccess.
* posix.sgml: Mention them.
2009-09-25 23:55:00 +00:00
358d4e3cb0
* configure.ac: Pass any --cache-file=/dev/null option on to
...
subconfigures.
* configure: Regenerate.
2009-09-25 19:25:04 +00:00
0986f93365
merge from gcc
2009-09-25 19:02:00 +00:00
5ceb291210
* setup2.sgml (setup-locale-problems): Fix charset names of codepages
...
936 and 949.
2009-09-25 16:42:36 +00:00
3dbe243afa
Fix faccessat(,0) and access() semantics.
...
* fhandler.h (fhandler_base::fhaccess): Add parameter.
* security.h (check_file_access, check_registry_access): Likewise.
* security.cc (check_file_access, check_registry_access)
(check_access): Implement new parameter.
* fhandler.cc (fhandler_base::fhaccess): Likewise.
(device_access_denied): Update caller.
* syscalls.cc (access, faccessat): Update callers.
* spawn.cc (find_exec, fixup): Likewise.
2009-09-25 13:44:45 +00:00
5386cd8ecc
* setup2.sgml (setup-locale-problems): Document how to install
...
non-default charsets.
2009-09-25 12:27:46 +00:00
005012ce6b
include/
...
* dwarf2.h (DW_TAG_rvalue_reference_type, DW_TAG_template_alias):
New tags.
(DW_FORM_ref_sig8): New name for DW_FORM_sig8.
(DW_AT_main_subprogram, DW_AT_data_bit_offset, DW_AT_const_expr,
DW_AT_enum_class, DW_AT_linkage_name, DW_AT_GNU_guarded_by,
DW_AT_GNU_pt_guarded_by, DW_AT_GNU_guarded, DW_AT_GNU_pt_guarded,
DW_AT_GNU_locks_excluded, DW_AT_GNU_exclusive_locks_required,
DW_AT_GNU_shared_locks_required, DW_AT_GNU_odr_signature): New
attributes.
(DW_LANG_Python): New language.
binutils/
* dwarf.c (get_TAG_name): Add missing DWARF-3 and new DWARF-4 tags.
(get_FORM_name): Add new DWARF-4 forms.
(read_and_display_attr_value): Add DW_FORM_ref_sig8, DW_LANG_Python.
(get_AT_name): Add new DWARF-4 and GNU-specific attributes.
(process_debug_info): Add do_types parameter; change all callers.
Add support for .debug_types sections.
(display_debug_types): New function.
(debug_displays): Add .debug_types section.
* readelf.c (process_section_headers): Add .debug_types section.
(display_debug_section): Simplify call to streq.
2009-09-24 20:52:07 +00:00
599d462dfa
* posix_ipc.cc (mq_open): Avoid closing the same descriptor twice in
...
case of errors.
(sem_open): Ditto.
2009-09-24 09:25:35 +00:00
1c23aff7a3
* kernel32.cc (CreateMutexW): Use correct access mask.
...
(CreateSemaphoreW): Ditto.
2009-09-24 09:09:45 +00:00
c1754722ee
* libc/locale/locale.c: Drop Cygwin-specific windows.h include.
...
(loadlocale): Call __set_charset_from_codepage with 0 codepage.
2009-09-23 17:19:00 +00:00
8e3607fcee
* strfuncs.cc (__set_charset_from_codepage): Fetch current ANSI
...
codepage if cp is 0.
2009-09-23 17:13:55 +00:00
565d6ede3f
Fix typo.
2009-09-23 12:01:42 +00:00
e664429d77
* strfuncs.cc (sys_cp_wcstombs): Convert lone surrogate pair
...
second halves to unambiguous ASCII SO sequence. When converting
chars invalid in current codepage to ASCII SO sequence, make
sure to check for surrogate pair second half only if ct least
one wide characters is left. Decrement nwc if valid second half has
been converted.
(sys_cp_mbstowcs): Improve ASCII SO handling. Never break from loop
if invalid character has been found. Recognize ASCII SO sequence
representing originally invalid mulitbyte char converted into a
lone surrogate pair second half. Convert accordingly.
2009-09-23 11:31:00 +00:00
70ecec052a
* config.sub, config.guess: Update from upstream sources.
2009-09-23 09:51:31 +00:00
515575eaae
merge from gcc
2009-09-22 21:52:47 +00:00
2ad8d17a16
2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
...
* libc/include/stdlib.h: Add posix_memalign.
2009-09-22 21:49:20 +00:00
bdb08ed44f
2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
...
* configure.host (*-rtems*): Remove -DMISSING_SYSCALL_NAMES.
Add -DHAVE_BLKSIZE, -D_NO_WORDEXP -D_NO_POPEN.
2009-09-22 21:24:55 +00:00
c3f3d59e43
2009-09-22 Ralf Corsépius <ralf.corsepius@rtems.org>
...
* configure.host (m32c): Move setting -DABORT_PROVIDED to second
"case $host".
2009-09-22 21:23:13 +00:00
8980b9ad03
Error out if building separately but srcdir has build remnants.
...
/:
PR bootstrap/32272
* configure.ac: Error out if $srcdir isn't '.' but contains
host-${host_noncanonical}.
* configure: Regenerate.
2009-09-22 18:00:40 +00:00
5e8d7527af
* autoload.cc (WSARecv): Define.
...
* fhandler_socket.cc (fhandler_socket::recv_internal): Call WSARecv
instead of WSARecvFrom if no name parameter is given. Explain why.
2009-09-22 14:27:57 +00:00
74a67d01a5
Make *at functions more like Linux.
...
* syscalls.cc (faccessat): Fix typo, reject bad flags.
(fchmodat, fchownat, fstatat, utimensat, linkat, unlinkat): Reject
bad flags.
2009-09-22 12:13:53 +00:00
abe6b5a3e2
* strfuncs.cc (sys_cp_mbstowcs): Reset shift state after handling
...
invalid multibyte sequence.
2009-09-22 09:44:32 +00:00
4401b147bb
* path.cc (symlink_worker): Rework error handling to generate Linux
...
compatible errno in case of trailing slash in newpath.
2009-09-22 09:24:30 +00:00
29bca9bb0c
Match dup2 and fcntl error values to POSIX.
...
* dtable.h (OPEN_MAX_MAX): New macro.
* resource.cc (getrlimit) [RLIMIT_NOFILE]: Use it.
* dtable.cc (dtable::extend): Likewise.
* fcntl.cc (fcntl64): Obey POSIX rule with too-large F_DUPFD.
* syscalls.cc (dup2): Likewise.
2009-09-22 04:09:03 +00:00
a7b24e14d7
* ChangeLog-2002: Fix typo.
...
* ChangeLog-2008: Likewise.
2009-09-22 02:49:15 +00:00
35f452c3e2
o * ppc.h (ppc_cpu_t): Typedef to uint64_t.
2009-09-22 02:36:26 +00:00
9d1fd371d1
Require c++ in stage1_languages with --enable-gold in combined bootstrap.
...
/:
* configure.ac: If bootstrapping a combined tree with
--enable-gold, require c++ in stage1_languages.
* configure: Regenerate.
2009-09-21 20:32:59 +00:00
e1762cf3a4
toplevel configure: bootstrap target_libs of stage1_languages.
...
/:
* configure.ac: Also add target_libs of stage1_languages to
bootstrap_target_libs.
* configure: Regenerate.
2009-09-21 20:31:02 +00:00
ee42ccd3a2
* cygheap.h (cwdstuff::get_posix): Convert to const inline method just
...
returning pointer to posix path.
(cwdstuff::reset_posix): Convert to non-inline method taking a wchar_t
pointer.
* path.cc (cwdstuff::set): Revert change from 2009-05-13. Set posix
to valid incoming path again.
(cwdstuff::reset_posix): New implementation setting posix path from
incoming wchar_t path. Explain usage.
(cwdstuff::get_posix): Drop implementation.
(cwdstuff::get): Drop special case to handle empty posix path.
* syscalls.cc (internal_setlocale): Store old posix cwd as wide char
path. Restore posix cwd using new charset. Explain why.
2009-09-21 19:29:16 +00:00
92763ad9ba
Diagnose --enable-build-with-cxx --enable-bootstrap --enable-languages w/o c++
...
/:
* configure.ac: Diagnose --enable-build-with-cxx bootstrap
with --enable-languages not containing c++.
* configure: Regenerate.
2009-09-21 19:25:05 +00:00
07ad8d11ca
2009-09-21 Ken Werner <ken.werner@de.ibm.com>
...
* spu/getpagesize.c: Align getpagesize implementation to POSIX
2009-09-21 16:07:34 +00:00
cd6dd861a3
include/elf/
...
* ppc.h (DT_PPC_TLSOPT): Define.
* ppc64.h (DT_PPC64_TLSOPT): Define.
bfd/
* elf32-ppc.c (TLS_GET_ADDR_GLINK_SIZE): Define.
(ADD_3_12_2, BEQLR, CMPWI_11_0, LWZ_11_3, LWZ_12_3): Define.
(MR_0_3, MR_3_0): Define.
(struct ppc_elf_link_hash_table): Add no_tls_get_addr_opt.
(ppc_elf_select_plt_layout): Save emit_stub_syms param earlier.
(ppc_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash
table. Check for presense of __tls_get_addr_opt
(allocate_dynrelocs): Increase glink entry size for __tls_get_addr.
(ppc_elf_size_dynamic_sections): Add DT_PPC_TLS_OPT tag.
(write_glink_stub): Add param p.
(ppc_elf_relocate_section): Adjust write_glink_stub call.
(ppc_elf_finish_dynamic_symbol): Emit special glink call stub for
__tls_get_addr.
* elf32-ppc.h (ppc_elf_tls_setup): Update prototype.
* elf64-ppc.c (struct ppc_link_hash_table): Add no_tls_get_addr_opt.
(ppc64_elf_tls_setup): Add no_tls_get_addr_opt param and save to hash
table. Check for presense of __tls_get_addr_opt.
(ppc64_elf_size_dynamic_sections): Add DT_PPC64_TLS_OPT tag.
(LD_R11_0R3, LD_R12_0R3, MR_R0_R3, CMPDI_R11_0, ADD_R3_R12_R13,
BEQLR, MR_R3_R0, MFLR_R11, STD_R11_0R1, BCTRL, LD_R11_0R1,
LD_R2_0R1, MTLR_R11): Define.
(build_tls_get_addr_stub): New function.
(ppc_build_one_stub): Call it.
(ppc_size_one_stub): Add extra size for __tls_get_addr stub.
(ppc64_elf_relocate_section): Don't change nop to ld 2,40(1) for
__tls_get_addr plt call.
* elf64-ppc.h (ppc64_elf_tls_setup): Update prototype.
binutils/
* readelf.c (get_ppc_dynamic_type): Add TLSOPT.
(get_ppc64_dynamic_type): Likewise.
ld/
* emultempl/ppc32elf.em (no_tls_get_addr_opt): New var.
(ppc_before_allocation): Pass to ppc_elf_tls_setup.
(OPTION_NO_TLS_GET_ADDR_OPT): Define. Redefine other options in
terms of previous option.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add
--no-tls-get-addr-optimize.
(PARSE_AND_LIST_ARGS_CASES): Handle it.
* emultempl/ppc64elf.em (no_tls_get_addr_opt): New var.
(ppc_before_allocation): Pass to ppc64_elf_tls_setup.
(OPTION_NO_TLS_GET_ADDR_OPT): Define.
(PARSE_AND_LIST_LONGOPTS, PARSE_AND_LIST_OPTIONS): Add
--no-tls-get-addr-optimize.
(PARSE_AND_LIST_ARGS_CASES): Handle it.
ld/testsuite/
* ld-powerpc/tlslib.s: Delete dot-symbol entry syms. Add
__tls_get_addr_opt.
* ld-powerpc/tlslib32.s: Add __tls_get_addr_opt.
* ld-powerpc/oldtlslib.s: New file, old-abi version of tlslib.s.
* ld-powerpc/powerpc.exp: Build old-abi library and use it in
two new link tests.
* ld-powerpc/tlsexe.d: Update for new __tls_get_addr stub.
* ld-powerpc/tlsexe.g, * ld-powerpc/tlsexe.r, *ld-powerpc/tlsexe32.d,
* ld-powerpc/tlsexe32.g, * ld-powerpc/tlsexe32.r,
* ld-powerpc/tlsexetoc.d, * ld-powerpc/tlsexetoc.g,
* ld-powerpc/tlsexetoc.r: Likewise.
2009-09-21 11:51:01 +00:00
8fd422fe4e
* new-features.sgml (ov-new1.7-file): Add new hardlink behaviour on
...
filesystems not supporting hardlinks.
* overview2.sgml (ov-hi-files): Change descripton accordingly.
2009-09-21 11:01:19 +00:00
6cabe044dd
* fhandler_disk_file.cc (fhandler_disk_file::link): Drop faking hardlink
...
creation on filesystems not supporting hardlinks.
2009-09-21 10:56:50 +00:00
991caa7310
gas/
...
* config/tc-ppc.c (md_show_usage): Document -mpcca2.
* doc/c-ppc.texi (PowerPC-Opts): Document -mppca2.
gas/testsuite/
* gas/ppc/a2.s: New.
* gas/ppc/a2.d: Likewise.
* gas/ppc/ppc.exp: Run the a2 dump test.
include/opcode/
* ppc.h (PPC_OPCODE_PPCA2): New.
opcodes/
* ppc-dis.c (ppc_opts): Add "ppca2" entry.
* ppc-opc.c (powerpc_opcodes): Add eratilx, eratsx, eratsx.,
eratre, wchkall, eratwe, ldawx., mdfcrx., mfdcr. mtdcrx., icswx,
icswx., mtdcr., dci, wclrone, wclrall, wclr, erativax, tlbsrx.,
ici mnemonics.
(ERAT_T): New operand.
(XWC_MASK): New mask.
(XOPL2): New macro.
(PPCA2): Define.
2009-09-21 10:29:07 +00:00
92c4330f5b
* dcrt0.cc (dll_crt0_1): Add another hack to REALLY make sure that cxx_malloc
...
is always set to the cygwin version.
2009-09-21 02:32:06 +00:00