summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * security.cc (lsa2str): New function.Corinna Vinschen2002-05-272-2/+15
| | | | (get_priv_list): Call lsa2str instead of sys_wcstombs.
* * syscalls.cc (seteuid): Do not take allow_ntsec into account.Corinna Vinschen2002-05-272-242/+225
| | | | | | | | Attempt to use an existing or new token even when the uid matches orig_uid, but the gid is not in the process token. Major reorganization after several incremental changes. (setegid): Do not take allow_ntsec into account. Minor reorganization after several incremental changes.
* 2002-05-27 Ren� M�ller Fonseca <fonseca@users.sourceforge.net>Danny Smith2002-05-272-7/+16
| | | | | | | * include/winreg.h: (RegConnectRegistry[AW]): Replace LP[W]STR with LPC[W]STR. (REG_QWORD, REG_QWORD_LITTLE_ENDIAN): Add defines. Clean up whitespace.
* 2002-05-27 Rick Rankin <rick_rankin@yahoo.com>Danny Smith2002-05-272-0/+7
| | | | * include/winnls.h: Add #define for LOCALE_RETURN_NUMBER.
* * debug.h (being_debugged): New macro.Christopher Faylor2002-05-275-2/+16
| | | | | | | * dtable.cc (dtable::extend): Use new macro. * exceptions.cc (try_to_debug): Ditto. * strace.cc (strace::hello): Only output debugging info when we think we're being debugged.
* * winsup.h: Remove duplicate declarations of malloc_lock and malloc_unlock.Christopher Faylor2002-05-272-3/+5
|
* update commentChristopher Faylor2002-05-271-1/+1
|
* * strace.cc (attach_process): Don't tell process to start stracing here.Christopher Faylor2002-05-272-3/+16
| | | | | | (proc_child): Do it here, instead, after first debug event. This should work around inexplicable races with DebugActiveProcess. (dostrace): Pass any pid argument to proc_child.
* * ia64.h: Use #include "" instead of <> for local header files.Alan Modra2002-05-253-4/+9
| | | | * sparc.h: Likewise.
* Remove unneeded sync.h, where appropriate, throughout. Remove unneeded heap.h,Christopher Faylor2002-05-2536-42/+7
| | | | | | where appropriate, throughout. Remove unneeded exceptions.h, where appropriate, throughout. Remove unneeded perprocess.h, where appropriate, throughout.
* 2002-05-24 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-249-27/+157
| | | | | | | | | | | * libc/include/string.h: Add strnlen and strerror_r prototypes. * libc/string/Makefile.am: Add strnlen.c and strerror_r.c support. * libc/string/Makefile.in: Regenerated. * libc/string/strerror_r.c: New file. * libc/string/strnlen.c: New file. * libc/sys/linux/Makefile.am: Add rename.c. * libc/sys/linux/Makefile.in: Regenerated. * libc/sys/linux/rename.c: New file to override default rename.
* Fix typos.Christopher Faylor2002-05-241-16/+16
|
* * libc/sys/linux/sys/cdefs.h: Add __weak_reference macros.Thomas Fitzsimmons2002-05-2412-23/+351
| | | | | | | | | * libc/sys/linux/sys/time.h: Add conversion macros. * libc/sys/linux/sys/types.h: Add FD_ macros. Include <bits/types.h>. * libc/sys/linux/ids.c: Add setresuid and syslog syscalls. * libc/sys/linux/gethostname.c: New file. * libc/sys/linux/seteuid.c: New file. * libc/sys/linux/sysctl.c: New file.
* * security.cc (create_token): Call __sec_user() instead ofCorinna Vinschen2002-05-242-4/+11
| | | | | sec_user() to remove dependence on allow_ntsec. Verify that the returned sd is non-null.
* * setfacl.c (usage): Standardize usage output. Change return type toCorinna Vinschen2002-05-242-122/+203
| | | | | | | static void. (print_version): New function. (longopts): Added longopts for all options. (main): Accommodate changes in usage function and new version option.
* 2002-05-25 Robert Collins <rbtcollins@hotmail.com>Robert Collins2002-05-242-1/+10
| | | | * gmon.c (fake_sbrk): Correctly return -1 on failed malloc's.
* * dtable.cc (dtable::build_fhandler_from_name): Just pass posix path along toChristopher Faylor2002-05-2410-55/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | set_name via return_and_clear_normalized_path. (dtable::build_fhandler): New method with const char * argument. (dtable::reset_unix_path_name): Eliminate. (dtable::dup_worker): Use correct build_fhandler method. * mmap.cc (mmap_record::alloc_fh): Ditto. * dtable.h (dtable::build_fhandler): New method. (dtable::reset_unix_path_name): Eliminate. * fhandler.cc (fhandler_base::set_name): Assume that unix_name has already been cmalloced. (fhandler_base::reset_unix_path_name): Eliminate. (fhandler_base::~fhandler_base): Coercion for cfree. * fhandler.h (fhandler_base::unix_path_name): Make const char *. (fhandler_base::win32_path_name): Ditto. (fhandler_base::reset_unix_path_name): Eliminate. * fhandler_disk_file.cc (fhandler_cygdrive::set_drives): Accommodate const char *ness of win32_path_name. * fhandler_socket.cc (fhandler_socket::fstat): Accommodate new set_name requirements. * path.cc (path_conv::return_and_clear_normalized_path): New method. (path_conv::clear_normalized_path): Eliminate. (path_conv::~path_conv): Ditto. (path_conv::check): Accommodate new build_fhandler method. * path.h (path_conv::~path_conv): Eliminate. (path_conv::clear_normalized_path): Ditto. (path_conv::return_and_clear_normalized_path): Declare new method.
* 2002-05-23 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-246-15/+87
| | | | | | | | | | * libc/string/Makefile.am: Add support for strsep.c. * libc/string/Makefile.in: Regenerated. * libc/string/strsep.c: New file. * libc/string/strtok.c: Change to call __strtok_r service routine. * libc/string/strtok_r.c: Add __strtok_r routine which takes additional flag parameter regarding whether to skip leading delimeters. Change strtok_r to call __strtok_r.
* * sim-d10v.h: Delete file. Moved to include/gdb/.Andrew Cagney2002-05-243-0/+8
| | | | | | | | | | * sim-d10v.h: New file. Moved from include/sim-d10v.h. * Makefile.in (INCLUDE): Add "gdb/sim-d10v.h". * interp.c: Include "gdb/sim-d10v.h" instead of "sim-d10v.h". * d10v-tdep.c: Include "gdb/sim-d10v.h" instead of "sim-d10v.h". * Makefile.in (sim_d10v_h): Update definition.
* 2002-05-23 Gareth Pearce <tilps@hotmail.com>Jeff Johnston2002-05-235-8/+213
| | | | | | | * libc/stdio/Makefile.am: Modify to add setbuffer.c and setlinebuf.c. * libc/stdio/Makefile.in: Regenerated. * libc/stdio/setbuffer.c: New file. * libc/stdio/setlinebuf.c: New file.
* * path.cc (path_conv::check): Make sure any trailing path component is part ofChristopher Faylor2002-05-232-1/+10
| | | | potential normalized posix path.
* 2002-05-23 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-238-28/+42
| | | | | | | | | | | * libc/sys/linux/Makefile.am: Add resource.c. * libc/sys/linux/Makefile.in: Regenerated. * libc/sys/linux/resource.c: New file. * libc/sys/linux/time.c: Add settimeofday, getitimer, and setitimer. * libc/sys/linux/machine/i386/Makefile.am: Remove syscalls.c. * libc/sys/linux/machine/i386/Makefile.in: Regenerated. * libc/sys/linux/machine/i386/syscalls.c: Removed as functions are now found in libc/sys/linux/resource.c.
* 2002-05-23 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-235-19/+28
| | | | | | | | * libc/include/string.h (bcmp, bcopy, bzero): Change prototypes to use void * pointers and comply with Single Unix spec. * libc/string/bcmp.c: Change to use void * instead of char *. * libc/string/bcopy.c: Ditto. * libc/string/bzero.c: Ditto.
* * elf.c (_bfd_elf_make_section_from_shdr): Set SEC_THREAD_LOCALJakub Jelinek2002-05-234-3/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for symbols from SHF_TLS section. (_bfd_elf_print_private_bfd_data): Add PT_TLS. (elf_fake_sections): Set SHF_TLS for SEC_THREAD_LOCAL sections. (map_sections_to_segments): Build PT_TLS segment if necessary. (assign_file_positions_for_segments): Likewise. (get_program_header_size): Account for PT_TLS segment. (swap_out_syms): Set type of BSF_THREAD_LOCAL symbols and symbols from SEC_THREAD_LOCAL sections to STT_TLS. * reloc.c: Add 386 and IA-64 TLS relocs. * section.c (SEC_THREAD_LOCAL): Define. (SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS): Remove. * elflink.h (elf_link_add_object_symbols): Support .tcommon. (size_dynamic_sections): If DF_STATIC_TLS, set DF_FLAGS unconditionally. (struct elf_final_link_info): Add first_tls_sec. (elf_bfd_final_link): Set first_tls_sec. Compute elf_hash_table (info)->tls_segment. (elf_link_output_extsym): Handle STT_TLS symbols. (elf_link_input_bfd): Likewise. * syms.c (BSF_THREAD_LOCAL): Define. * bfd-in2.h: Rebuilt. * libbfd.h: Rebuilt. * elf32-i386.c (elf_i386_tls_transition, dtpoff_base, tpoff, elf_i386_mkobject, elf_i386_object_p): New functions. (elf_howto_table): Add TLS relocs. (elf_i386_reloc_type_lookup): Support TLS relocs. (elf_i386_info_to_howto_rel): Likewise. (struct elf_i386_link_hash_entry): Add tls_type. (struct elf_i386_obj_tdata): New. (elf_i386_hash_entry, elf_i386_tdata, elf_i386_local_got_tls_type): New macros. (struct elf_i386_link_hash_table): Add tls_ldm_got. (link_hash_newfunc): Clear tls_type. (elf_i386_check_relocs): Support TLS relocs. (elf_i386_gc_sweep_hook): Likewise. (allocate_dynrelocs): Likewise. (elf_i386_size_dynamic_sections): Likewise. (elf_i386_relocate_section): Likewise. (elf_i386_finish_dynamic_symbol): Likewise. (bfd_elf32_mkobject, elf_backend_object_p): Define. * elfxx-ia64.c (struct elfNN_ia64_dyn_sym_info): Add tprel_offset, dtpmod_offset, dtprel_offset, tprel_done, dtpmod_done, dtprel_done, want_tprel, want_dtpmod, want_dtprel. (elfNN_ia64_tprel_base, elfNN_ia64_dtprel_base): New functions. (ia64_howto_table): Add TLS relocs, rename R_IA64_LTOFF_TP22 to R_IA64_LTOFF_TPREL22. (elf_code_to_howto_index): Add TLS relocs. (elfNN_ia64_check_relocs): Support TLS relocs. (allocate_global_data_got): Account for TLS .got data. (allocate_dynrel_entries): Account for TLS dynamic relocations. (elfNN_ia64_install_value): Supprt TLS relocs. (set_got_entry): Support TLS relocs. (elfNN_ia64_relocate_section): Likewise. * config/obj-elf.c (elf_common): Renamed from obj_elf_common. (obj_elf_common): Call elf_common. (obj_elf_tls_common): New function. (elf_pseudo_tab): Support .tls_common. (special_sections): Add .tdata and .tbss. (obj_elf_change_section): Set SEC_THREAD_LOCAL for SHF_TLS sections. (obj_elf_parse_section_letters): Support T in section flags (SHF_TLS). (obj_elf_parse_section_letters): Include T in error message. * config/tc-ppc.c (ppc_section_letter): Likewise. * config/tc-alpha.c (alpha_elf_section_letter): Likewise. (tc_gen_reloc): Handle SEC_THREAD_LOCAL the same way as SEC_MERGE. * config/tc-sparc.c (md_apply_fix3): Likewise. * config/tc-i386.c (tc_i386_fix_adjustable): Add TLS relocs. Define them if not BFD_ASSEMBLER. (lex_got): Support @TLSGD, @TLSLDM, @GOTTPOFF, @TPOFF, @DTPOFF and @NTPOFF. (md_apply_fix3): Add TLS relocs. * config/tc-ia64.c (enum reloc_func): Add FUNC_DTP_MODULE, FUNC_DTP_RELATIVE, FUNC_TP_RELATIVE, FUNC_LT_DTP_MODULE, FUNC_LT_DTP_RELATIVE, FUNC_LT_TP_RELATIVE. (pseudo_func): Support @dtpmod(), @dtprel() and @tprel(). (ia64_elf_section_letter): Include T in error message. (md_begin): Support TLS operators. (md_operand): Likewise. (ia64_gen_real_reloc_type): Support TLS relocs. * testsuite/gas/i386/tlspic.s: New file. * testsuite/gas/i386/tlsd.s: New file. * testsuite/gas/i386/tlsnopic.s: New file. * testsuite/gas/i386/tlsd.d: New file. * testsuite/gas/i386/tlsnopic.d: New file. * testsuite/gas/i386/tlspic.d: New file. * testsuite/gas/i386/i386.exp: Add tlsd, tlsnopic and tlspic tests. * testsuite/gas/ia64/tls.s: New file. * testsuite/gas/ia64/tls.d: New file. * testsuite/gas/ia64/ia64.exp: Add tls test. * write.c (adjust_reloc_syms): Don't change symbols in SEC_THREAD_LOCAL sections to STT_SECTION + addend. * elf/common.h (PT_TLS, SHF_TLS, STT_TLS, DF_STATIC_TLS): Define. * elf/ia64.h (R_IA64_LTOFF_TPREL22): Renamed from R_IA64_LTOFF_TP22. * elf/i386.h: Add TLS relocs. * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss. * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for output section if necessary. Handle .tbss. (lang_size_sections): Clear _raw_size for .tbss section (it allocates space in PT_TLS segment only). * ldwrite.c (build_link_order): Build link order for .tbss too. * readelf.c (get_segment_type): Add PT_TLS. (get_elf_section_flags): Add SHF_TLS. (get_dynamic_flags): Optimize. Add DF_STATIC_TLS. (process_dynamic_segment): Use puts instead of printf. (get_symbol_type): Support STT_TLS. * objdump.c (dump_section_header): Remove SEC_CONSTRUCTOR_TEXT, SEC_CONSTRUCTOR_DATA, SEC_CONSTRUCTOR_BSS. Add SEC_THREAD_LOCAL.
* * getfacl.c (usage): Standardize usage output. Change return type toCorinna Vinschen2002-05-232-58/+101
| | | | | | | static void. (print_version): New function. (longopts): Added longopts for all options. (main): Accommodate new help and version options.
* * smallprint.c (__small_vsprintf): Implement '%o' after all these years.Christopher Faylor2002-05-232-0/+8
|
* fix typo.Christopher Faylor2002-05-231-1/+1
|
* * mount.cc (version) New global variable.Christopher Faylor2002-05-232-23/+73
| | | | | | | | (usage) Standardize usage output. Accomodate new version option. (print_version) New function. (longopts) Accomodate new version option. (opts) Ditto. (main) Ditto.
* * fhandler.h (fhandler_virtual::exists): Eliminate path argument.Christopher Faylor2002-05-228-24/+40
| | | | | | | | | | | | | | (fhandler_proc::exists): Ditto. (fhandler_registry::exists): Ditto. (fhandler_process::exists): Ditto. * fhandler_proc.cc (fhandler_proc::exists): Ditto. Use built-in name. * fhandler_process.cc (fhandler_process::exists): Ditto. (fstat): Ditto. * fhandler_registry.cc (fhandler_registry::exists): Ditto. (fhandler_registry::fstat): Ditto. * fhandler_virtual.cc (fhandler_virtual::opendir): Ditto. * path.cc (path_conv::check): Ditto. Add debugging. * syscalls.cc (dup): Always call dup2 for error handling.
* * acinclude.m4: Allow for PWDCMD to override hardcoded pwd.DJ Delorie2002-05-221-0/+4
|
* 2002-05-22 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-226-13/+99
| | | | | | | | | | * libc/sys/linux/shm_open.c: New file. * libc/sys/linux/shm_unlink.c: Ditto. * libc/sys/linux/Makefile.am: Add support for shm_open.c and shm_unlink.c. * libc/sys/linux/Makefile.in: Regenerated. * libc/sys/linux/sys/types.h: Add some additional checks to see if clock_t or time_t is already defined.
* * config.guess: Update to 2002-05-22 version.Jason Thorpe2002-05-223-5/+14
| | | | * config.sub: Likewise.
* 2002-05-22 Jeff Johnston <jjohnstn@redhat.com>Jeff Johnston2002-05-223-2/+9
| | | | | | | * Makefile.am: Don't pass $toollibdir down directly in AM_MAKEFLAGS as it causes all multilibs to use the same toollibdir. Pass it under the name: top_toollibdir. * Makefile.in: Regenerated.
* * include/cygwin/types.h: Revert previous patch.Corinna Vinschen2002-05-222-2/+4
|
* * libc/include/sys/types.h: Revert previous patch.Corinna Vinschen2002-05-222-2/+5
|
* * libc/include/sys/types.h: Include cygwin/types.h always underCorinna Vinschen2002-05-222-1/+7
| | | | Cygwin, not only if _POSIX_THREADS is defined.
* * include/cygwin/types.h: Define pthread stuff only if _POSIX_THREADSCorinna Vinschen2002-05-222-0/+7
| | | | is defined.
* * cygpath.cc (usage): Change usage output slightly.Corinna Vinschen2002-05-223-105/+303
| | | | | | | | | | | | | | | | * cygpath.cc (main): Add option l to support conversion to Windows long file names. Refactured code for capital options. Support of options from file for capital options. (dowin): New function. Refactured from main. (doit): Call long path conversion. (get_long_name): New function. (get_long_paths): New function. (get_long_path_name_w32impl): New function. Reimplementation of Windows API function GetLongPathName (only 98/Me/2000/XP or higher). (get_short_name): Call GetShortPathName only once. (get_short_paths): Fix calculating buffer size. * utils.sgml: Update cygpath section for l option.
* Allow for PWDCMD to override hardcoded pwd.Nick Clifton2002-05-226-176/+194
|
* 2002-05-21 H.J. Lu (hjl@gnu.org)H.J. Lu2002-05-222-0/+6
| | | | * bfdlink.h (bfd_link_info): Add allow_multiple_definition.
* ? gas/testsuite/gas/mips/rol64.dThiemo Seufer2002-05-212-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ? gas/testsuite/gas/mips/rol64.s Index: gas/ChangeLog =================================================================== RCS file: /cvs/src/src/gas/ChangeLog,v retrieving revision 1.1334 diff -u -p -r1.1334 ChangeLog --- gas/ChangeLog 21 May 2002 20:01:51 -0000 1.1334 +++ gas/ChangeLog 21 May 2002 23:32:51 -0000 @@ -1,3 +1,8 @@ +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * config/tc-mips.c (macro2): Add 64 bit drol, dror macros. + Optimize the rotate by zero case. + 2002-05-21 Nick Clifton <nickc@cambridge.redhat.com> * configure.in: Remove accidental enabling of bfd_gas=yes for Index: gas/config/tc-mips.c =================================================================== RCS file: /cvs/src/src/gas/config/tc-mips.c,v retrieving revision 1.123 diff -u -p -r1.123 tc-mips.c --- gas/config/tc-mips.c 14 May 2002 23:35:59 -0000 1.123 +++ gas/config/tc-mips.c 21 May 2002 23:32:52 -0000 @@ -6686,6 +6686,17 @@ macro2 (ip) --mips_opts.noreorder; break; + case M_DROL: + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsubu", + "d,v,t", AT, 0, treg); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsrlv", + "d,t,s", AT, sreg, AT); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsllv", + "d,t,s", dreg, sreg, treg); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); + break; + case M_ROL: macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "subu", "d,v,t", AT, 0, treg); @@ -6697,15 +6708,55 @@ macro2 (ip) "d,v,t", dreg, dreg, AT); break; + case M_DROL_I: + { + unsigned int rot; + char *l, *r; + + if (imm_expr.X_op != O_constant) + as_bad (_("rotate count too large")); + rot = imm_expr.X_add_number & 0x3f; + if (! rot) + break; + l = (rot < 0x20) ? "dsll" : "dsll32"; + r = ((0x40 - rot) < 0x20) ? "dsrl" : "dsrl32"; + rot &= 0x1f; + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, l, + "d,w,<", AT, sreg, rot); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, r, + "d,w,<", dreg, sreg, (0x20 - rot) & 0x1f); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); + } + break; + case M_ROL_I: - if (imm_expr.X_op != O_constant) - as_bad (_("rotate count too large")); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "sll", "d,w,<", - AT, sreg, (int) (imm_expr.X_add_number & 0x1f)); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "srl", "d,w,<", - dreg, sreg, (int) ((0 - imm_expr.X_add_number) & 0x1f)); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", "d,v,t", - dreg, dreg, AT); + { + unsigned int rot; + + if (imm_expr.X_op != O_constant) + as_bad (_("rotate count too large")); + rot = imm_expr.X_add_number & 0x1f; + if (! rot) + break; + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "sll", + "d,w,<", AT, sreg, rot); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "srl", + "d,w,<", dreg, sreg, (0x20 - rot) & 0x1f); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); + } + break; + + case M_DROR: + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsubu", + "d,v,t", AT, 0, treg); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsllv", + "d,t,s", AT, sreg, AT); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "dsrlv", + "d,t,s", dreg, sreg, treg); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); break; case M_ROR: @@ -6719,15 +6770,44 @@ macro2 (ip) "d,v,t", dreg, dreg, AT); break; + case M_DROR_I: + { + unsigned int rot; + char *l, *r; + + if (imm_expr.X_op != O_constant) + as_bad (_("rotate count too large")); + rot = imm_expr.X_add_number & 0x3f; + if (! rot) + break; + r = (rot < 0x20) ? "dsrl" : "dsrl32"; + l = ((0x40 - rot) < 0x20) ? "dsll" : "dsll32"; + rot &= 0x1f; + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, r, + "d,w,<", AT, sreg, rot); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, l, + "d,w,<", dreg, sreg, (0x20 - rot) & 0x1f); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); + } + break; + case M_ROR_I: - if (imm_expr.X_op != O_constant) - as_bad (_("rotate count too large")); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "srl", "d,w,<", - AT, sreg, (int) (imm_expr.X_add_number & 0x1f)); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "sll", "d,w,<", - dreg, sreg, (int) ((0 - imm_expr.X_add_number) & 0x1f)); - macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", "d,v,t", - dreg, dreg, AT); + { + unsigned int rot; + + if (imm_expr.X_op != O_constant) + as_bad (_("rotate count too large")); + rot = imm_expr.X_add_number & 0x1f; + if (! rot) + break; + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "srl", + "d,w,<", AT, sreg, rot); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "sll", + "d,w,<", dreg, sreg, (0x20 - rot) & 0x1f); + macro_build ((char *) NULL, &icnt, (expressionS *) NULL, "or", + "d,v,t", dreg, dreg, AT); + } break; case M_S_DOB: Index: gas/testsuite/ChangeLog =================================================================== RCS file: /cvs/src/src/gas/testsuite/ChangeLog,v retrieving revision 1.315 diff -u -p -r1.315 ChangeLog --- gas/testsuite/ChangeLog 20 May 2002 17:05:34 -0000 1.315 +++ gas/testsuite/ChangeLog 21 May 2002 23:32:54 -0000 @@ -1,3 +1,9 @@ +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * gas/mips/rol64.s: New file, test of drol, dror macros. + * gas/mips/rol64.d: Likewise. + * gas/mips/mips.exp: Add new test. + 2002-05-20 Nick Clifton <nickc@cambridge.redhat.com> * gas/arm/arm.exp: Replace deprecated command line switches Index: gas/testsuite/gas/mips/mips.exp =================================================================== RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips.exp,v retrieving revision 1.32 diff -u -p -r1.32 mips.exp --- gas/testsuite/gas/mips/mips.exp 4 Apr 2002 08:23:30 -0000 1.32 +++ gas/testsuite/gas/mips/mips.exp 21 May 2002 23:32:54 -0000 @@ -122,6 +122,7 @@ if { [istarget mips*-*-*] } then { run_dump_test "mul" } run_dump_test "rol" + run_dump_test "rol64" if !$aout { run_dump_test "sb" } run_dump_test "trunc" if !$aout { run_dump_test "ulh" } Index: include/opcode/ChangeLog =================================================================== RCS file: /cvs/src/src/include/opcode/ChangeLog,v retrieving revision 1.167 diff -u -p -r1.167 ChangeLog --- include/opcode/ChangeLog 17 May 2002 19:01:03 -0000 1.167 +++ include/opcode/ChangeLog 21 May 2002 23:32:57 -0000 @@ -1,3 +1,7 @@ +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * mips.h: Add M_DROL, M_DROL_I, M_DROR, M_DROR_I macro cases. + 2002-05-17 Andrey Volkov <avolkov@sources.redhat.com> * h8300.h: Corrected defs of all control regs Index: include/opcode/mips.h =================================================================== RCS file: /cvs/src/src/include/opcode/mips.h,v retrieving revision 1.24 diff -u -p -r1.24 mips.h --- include/opcode/mips.h 16 Mar 2002 03:09:18 -0000 1.24 +++ include/opcode/mips.h 21 May 2002 23:32:57 -0000 @@ -526,9 +526,13 @@ enum M_REM_3I, M_REMU_3, M_REMU_3I, + M_DROL, M_ROL, + M_DROL_I, M_ROL_I, + M_DROR, M_ROR, + M_DROR_I, M_ROR_I, M_S_DA, M_S_DOB, Index: opcodes/ChangeLog =================================================================== RCS file: /cvs/src/src/opcodes/ChangeLog,v retrieving revision 1.447 diff -u -p -r1.447 ChangeLog --- opcodes/ChangeLog 17 May 2002 14:36:45 -0000 1.447 +++ opcodes/ChangeLog 21 May 2002 23:33:00 -0000 @@ -1,3 +1,7 @@ +2002-05-22 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * mips-opc.c (mips_builtin_opcodes): Add drol, dror macros. + Fri May 17 14:26:44 2002 J"orn Rennecke <joern.rennecke@superh.com> * disassemble.c (disassembler): Just use print_insn_sh for bfd_arch_sh. Index: opcodes/mips-opc.c =================================================================== RCS file: /cvs/src/src/opcodes/mips-opc.c,v retrieving revision 1.32 diff -u -p -r1.32 mips-opc.c --- opcodes/mips-opc.c 17 Mar 2002 02:42:25 -0000 1.32 +++ opcodes/mips-opc.c 21 May 2002 23:33:00 -0000 @@ -492,6 +492,10 @@ const struct mips_opcode mips_builtin_op {"dremu", "z,s,t", 0x0000001f, 0xfc00ffff, RD_s|RD_t|WR_HILO, I3 }, {"dremu", "d,v,t", 3, (int) M_DREMU_3, INSN_MACRO, I3 }, {"dremu", "d,v,I", 3, (int) M_DREMU_3I, INSN_MACRO, I3 }, +{"drol", "d,v,t", 0, (int) M_DROL, INSN_MACRO, I3 }, +{"drol", "d,v,I", 0, (int) M_DROL_I, INSN_MACRO, I3 }, +{"dror", "d,v,t", 0, (int) M_DROR, INSN_MACRO, I3 }, +{"dror", "d,v,I", 0, (int) M_DROR_I, INSN_MACRO, I3 }, {"dsllv", "d,t,s", 0x00000014, 0xfc0007ff, WR_d|RD_t|RD_s, I3 }, {"dsll32", "d,w,<", 0x0000003c, 0xffe0003f, WR_d|RD_t, I3 }, {"dsll", "d,w,s", 0x00000014, 0xfc0007ff, WR_d|RD_t|RD_s, I3 }, /* dsllv */
* 2002-05-21 Dhananjay Deshpande <dhananjayd@kpit.com>Thomas Fitzsimmons2002-05-212-0/+7
| | | | * configure.host: Specify sys_dir=h8300hms for h8300-*-coff* target.
* * Makefile.in: Increment VERSION to 1.4.Earnie Boyd2002-05-212-2/+9
| | | | | (conf_prefix): New variable. (bindist): Modify target to use $(conf_prefix).
* * security.cc (open_local_policy): Initialize lsa toCorinna Vinschen2002-05-212-4/+12
| | | | | | | INVALID_HANDLE_VALUE instead of NULL. (get_logon_server_and_user_domain): Test for INVALID_HANDLE_VALUE instead of NULL. (create_token): Both of the above.
* 2002-05-20 Philip Aston <philipa@mail.com>Danny Smith2002-05-202-1/+5
| | | | * include/pbt.h (PBT_APMRESUMESUSPEND): Correct value is 7.
* 2002-05-20 Ren� M�ller Fonseca <fonseca@users.sourceforge.net>Danny Smith2002-05-202-43/+49
| | | | | | * include/lmaccess.h: (NetAccess*, NetGroup*, NetLocalGroup*, NetUser*, NetGet*, INetLogonControl[2], NetQueryDisplayInfotmationIndex): Replace LPWSTR with LPCWSTR.
* * fhandler_disk_file.cc (fhandler_disk_file::fstat): Make handling of nlinkChristopher Faylor2002-05-182-4/+8
| | | | consistent for remote files.
* * strace.cc (add_child): Use calloc since new requires working libstdc++.a.Christopher Faylor2002-05-182-2/+8
| | | | (fhandler_disk_file::fstat): Ditto for delete/free.
* * path.cc (path_conv::check): Always set executable bit for executableChristopher Faylor2002-05-184-3/+10
| | | | extension.
* remove white spaceChristopher Faylor2002-05-181-2/+2
|