gdb/gdb-rhbz795424-bitpos-20of2...

3392 lines
124 KiB
Diff
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

http://sourceware.org/ml/gdb-patches/2012-09/msg00631.html
Subject: [PATCH 1/4] Expand bitpos and type.length to LONGEST and ULONGEST
--MP_/yp5f+W_ED2JtUlSyBi8xujr
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Hi,
This is patch 1/4, which implements the bulk of the changes in type
length and bitpos/type offset. I have verified that there are no
regressions resulting from this patch by running the testsuite on
Fedora 16 x86_64. Patch and changelog attached.
Regards,
Siddhesh
--MP_/yp5f+W_ED2JtUlSyBi8xujr
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment; filename=ChangeLog-main
gdb/ChangeLog
2012-08-05 Siddhesh Poyarekar <siddhesh@redhat.com>
* ada-lang.c (fat_pntr_bounds_bitpos): Return LONGEST.
(fat_pntr_data_bitpos): Likewise.
(desc_bound_bitpos): Likewise.
(constrained_packed_array_type): Expand ELT_BITS parameter to
LONGEST.
(move_bits): Expand parameters SRC_OFFSET and N to LONGEST.
(cond_offset_host): Expand parameter OFFSET to LONGEST.
(cond_offset_target): Likewise.
(ada_type_of_array): Expand ARRAY_BITSIZE to LONGEST.
(decode_constrained_packed_array_type): Expand BITS to LONGEST.
(decode_constrained_packed_array): Expand BIT_POS to LONGEST.
(ada_value_primitive_packed_val): Expand parameter OFFSET to
LONGEST. Expand TARG, NTARG and NEW_OFFSET to LONGEST.
(ada_value_assign): Expand FROM_SIZE to LONGEST.
(value_assign_to_component): Expand BITS to LONGEST.
(ensure_lval): Expand LEN to LONGEST.
(value_pointer): Expand LEN to ULONGEST.
(value_tag_from_contents_and_address): Expand TAG_BYTE_OFFSET to
LONGEST.
(ada_value_primitive_field): Expand parameter OFFSET to LONGEST.
Expand bit_pos to LONGEST.
(find_struct_field): Expand parameters OFFSET and BYTE_OFFSET_P to
LONGEST. Expand BIT_POS and FLD_OFFSET to LONGEST.
(ada_search_struct_field): Expand parameter OFFSET to LONGEST.
Expand VAR_OFFSET to LONGEST.
(ada_index_struct_field): Expand parameters INDEX and OFFSET to
LONGEST.
(ada_index_struct_field_1): Expand parameters INDEX_P and OFFSET
to LONGEST.
(ada_value_struct_elt): Expand BYTE_OFFSET to LONGEST.
(align_value): Return ULONGEST. Expand parameter OFF and
ALIGNMENT to ULONGEST.
(ada_template_to_fixed_record_type_1): Expand OFF, BIT_LEN and
fld_bit_len to LONGEST. Expand FIELD_OFFSET to LONGEST. Use
pulongest function to print TYPE_LENGTH.
(to_fixed_array_type): Expand LEN to LONGEST.
* ada-lang.h (ada_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(ada_printstr): Expand parameter LENGTH to ULONGEST.
(ada_value_primitive_packed_val): Expand parameter OFFSET to
LONGEST.
* ada-typeprint.c (ada_print_type): Use pulongest to print
TYPE_LENGTH.
* ada-valprint.c (val_print_packed_array_elements): Expand ELTLEN
to ULONGEST.
(char_at): Expand parameter I to LONGEST.
(printstr): Expand parameter LENGTH, I, REP1, REPS to ULONGEST.
Use pulongest to format print REPS.
(ada_printstr): Expand parameter LENGTH to LONGEST.
(ada_val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
(ada_val_print_array): Expand ELTLEN, LEN to ULONGEST and TEMP_LEN
to LONGEST.
(ada_val_print_1): Expand parameter OFFSET to LONGEST.
(print_variant_part): Expand parameters OFFSET and OUTER_OFFSET to
LONGEST.
(print_field_values): Likewise. Expand BIT_POS to LONGEST.
* annotate.c (annotate_array_section_begin): Expand parameter
IDX to LONGEST. Use plongest to format-print IDX.
(annotate_elt_rep): Expand parameter REPCOUNT to ULONGEST. Use
plongest to format-print REPCOUNT.
* annotate.h: Likewise.
* arm-linux-nat.c (arm_linux_region_ok_for_hw_watchpoint):
Expand parameter parameter LEN to LONGEST.
* ax-gdb.c (gen_left_shift): Expand parameter DISTANCE to LONGEST.
(gen_offset): Expand parameter OFFSET to LONGEST.
(gen_bitfield_ref): Expand parameters START, END to LONGEST.
Expand BOUND_START, BOUND_END, OFFSET to LONGEST.
(gen_primitive_field): Expand parameter OFFSET to LONGEST.
(gen_struct_ref_recursive): Likewise.
* ax-general.c (ax_trace_quick): Expand parameter N to LONGEST.
* ax.h (ax_trace_quick): Likewise.
* breakpoint.c (breakpoint_address_match_range): Expand parameter
LEN1 to LONGEST.
(can_use_hardware_watchpoint): Expand LEN to LONGEST.
* breakpoint.h (struct bp_target_info): Expand member LENGTH to
LONGEST.
(struct bp_location): Likewise.
* c-lang.c (c_printstr): Expand parameter LENGTH to ULONGEST.
(evaluate_subexp_c): Expand ELEMENT_SIZE, I to LONGEST.
* c-lang.h (c_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(c_printstr): Expand parameter LENGTH to ULONGEST.
(cp_print_value_fields): Expand parameter OFFSET to LONGEST.
(cp_print_value_fields_rtti): Likewise.
* c-typeprint.c (c_type_print_varspec_suffix): Remove cast down to
int and use plongest to print LONGEST.
* c-valprint.c (c_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST. Expand OFFSET to LONGEST, ELTLEN to ULONGEST.
(c_value_print): Expand TOP to LONGEST.
* cp-abi.c (baseclass_offset): Return LONGEST. Expand parameter
EMBEDDED_OFFSET to LONGEST. Expand RES to LONGEST.
(value_virtual_fn_field): Expand parameter OFFSET to LONGEST.
(value_rtti_type): Expand parameter TOP to point to LONGEST.
* cp-abi.h (value_virtual_fn_field): Expand OFFSET to LONGEST.
(value_rtti_type): Expand TOP to point to LONGEST.
(baseclass_offset): Return LONGEST. Expand parameter
EMBEDDED_OFFSET to LONGEST.
(struct cp_abi_ops): Expand parameter OFFSET for VIRTUAL_FN_FIELD
to LONGEST. Expand parameter TOP to point to LONGEST in
VALUE_RTTI_TYPE. Return LONGEST from BASECLASS_OFFSET and expand
parameter EMBEDDED_OFFSET to LONGEST.
* cp-valprint.c (cp_print_value_fields): Expand parameter OFFSET
to LONGEST. Expand I_OFFSET to LONGEST.
(cp_print_value_fields_rtti): Expand parameter OFFSET to
LONGEST. Expand TOP to LONGEST.
(cp_print_value): Expand parameter OFFSET to LONGEST. Expand
THISOFFSET, BOFFSET to LONGEST.
* d-lang.h (d_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
* d-valprint.c (dynamic_array_type): Likewise.
(d_val_print): Likewise.
* doublest.c (floatformat_from_length): Expand parameter LEN to
LONGEST. Use plongest to format string for LONGEST.
* dwarf2loc.c (copy_bitwise): Expand parameters DEST_OFFSET_BITS,
BIT_COUNT to ULONGEST. Rename parameter SOURCE_OFFSET_BITS to
SOURCE_OFFSET and expand to ULONGEST. New variable
SOURCE_OFFSET_BITS.
(read_pieced_value): Expand OFFSET, DEST_OFFSET_BITS,
SOURCE_OFFSET_BITS, SOURCE_OFFSET to LONGEST. Expand TYPE_LEN,
THIS_SIZE, THIS_SIZE_BITS to ULONGEST.
(write_pieced_value): Likewise.
(check_pieced_value_bits): Expand parameters BIT_OFFSET and
BIT_LENGTH to LONGEST. Expand THIS_SIZE_BITS to ULONGEST.
(check_pieced_value_validity): Expand parameters BIT_OFFSET and
BIT_LENGTH to LONGEST.
(check_pieced_synthetic_pointer): Likewise.
(indirect_pieced_value): Expand BIT_LENGTH, BYTE_OFFSET and
BIT_OFFSET to LONGEST.
(dwarf2_evaluate_loc_desc_full): Expand N to ULONGEST.
* dwarf2read.c (dwarf2_const_value_length_mismatch_complaint):
Expand parameters ARG2 and ARG3 to LONGEST. Use plongest to
print ARG2 and ARG3.
(dwarf2_add_field): Expand ANONYMOUS_SIZE, BIT_OFFSET to
LONGEST.
* eval.c (evaluate_struct_tuple): Expand BITPOS to LONGEST.
(init_array_element): Expand ELEMENT_SIZE to LONGEST.
(binop_promote): Expand PROMOTED_LEN1, PROMOTED_LEN2, RESULT_LEN
to ULONGEST.
(evaluate_subexp_standard): Expand MEM_OFFSET, TOP, ELEMENT_SIZE
to LONGEST.
* f-lang.c (f_printstr): Expand parameter LENGTH to ULONGEST.
* f-lang.h (f_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
* f-valprint.c (f77_array_offset_tbl): Make LONGEST.
(f77_create_arrayprint_offset_tbl): Expand ELTLEN to LONGEST.
(f77_print_array_1): Expand parameter EMBEDDED_OFFSET to
LONGEST. Expand I to LONGEST.
(f77_print_array): Expand parameter EMBEDDED_OFFSET to LONGEST.
(f_val_print): Likewise. Expand OFFSET to LONGEST.
* findvar.c (default_value_from_register): Expand LEN to LONGEST.
(read_frame_register_value): Expand OFFSET, REG_OFFSET, LEN,
REG_LEN to LONGEST.
* frame.c (get_frame_register_bytes): Expand parameter LEN to
LONGEST.
* frame.h (get_frame_register_bytes): Likewise.
* gdbtypes.c (init_type): Expand parameter LENGTH to LONGEST.
(is_unique_ancestor_worker): Expand parameters OFFSET,
EMBEDDED_OFFSET to LONGEST. Expand THIS_OFFSET to LONGEST.
(is_unique_ancestor): Expand OFFSET to LONGEST.
(recursive_dump_type): Use pulongest to format print TYPE_LENGTH.
Use plongest to format print TYPE_FIELD_BITPOS.
(arch_type): Expand parameter LENGTH to LONGEST.
* gdbtypes.h (struct type.main_type.fld_bnds.fields): Expand
member BITPOS to LONGEST.
(struct type): Expand member LENGTH to ULONGEST.
(init_type): Expand parameter LENGTH to LONGEST.
(arch_type): Likewise.
* gnu-v2-abi.c (gnuv2_virtual_fn_field): Expand parameter OFFSET
to LONGEST.
(gnuv2_value_rtti_type): Expand parameter TOP to point to LONGEST.
(gnuv2_baseclass_offset): Return LONGEST. Expand parameter
EMBEDDED_OFFSET to LONGEST. Expand FIELD_OFFSET, BOFFSET,
FIELD_LENGTH to LONGEST.
* gnu-v3-abi.c (build_gdb_vtable_type): Expand OFFSET to LONGEST.
(vtable_address_point_offset): Return LONGEST.
(gnuv3_rtti_type): Expand parameter TOP_P to point to LONGEST.
(gnuv3_virtual_fn_field): Expand parameter OFFSET to LONGEST.
(gnuv3_baseclass_offset): Return LONGEST. Expand parameter
EMBEDDED_OFSET to LONGEST. Expand CUR_BASE_OFFSET, BASE_OFFSET to
LONGEST.
(gnuv3_find_method_in): Expand POS to LONGEST.
* go-lang.h (go_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
* go-valprint.c (print_go_string): Likewise.
(go_val_print): Likewise.
* i386-nat.c (i386_handle_nonaligned_watchpoint): Expand
parameter LEN to LONGEST.
(i386_region_ok_for_watchpoint): Likewise.
* inf-ttrace.c (inf_ttrace_region_ok_for_hw_watchpoint): Expand
parameter LEN to LONGEST.
* jv-lang.c (java_link_class_type): Expand BOFFSET to LONGEST.
(java_printstr): Expand parameter LENGTH to ULONGEST.
* jv-lang.h (java_val_print): Expand parameter EMBEDDED_OFFSET to
LONGEST.
* jv-valprint.c (java_print_value_fields): Expand parameter OFFSET
to LONGEST.
(java_val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
* language.c (unk_lang_printstr): Expand parameter LENGTH to
ULONGEST.
(unk_lang_val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
* language.h (language_defn): Expand parameter LENGTH of
LA_PRINTSTR to ULONGEST. Expand parameter EMBEDDED_OFFSET of
LA_VAL_PRINT to LONGEST.
* m2-lang.c (m2_printstr): Expand parameter LENGTH to ULONGEST.
Expand I, REP1, REPS to ULONGEST. Use pulongest to format print
REPS.
* m2-lang.h (m2_val_print): Expand parameter embedded_offset to
LONGEST.
* m2-typeprint.c (m2_array): New variable VAL. Use pulongest to
* format print VAL.
(m2_enum): expand LASTVAL to LONGEST.
* m2-valprint.c (m2_print_long_set): Expand parameter
EMBEDDED_OFFSET to LONGEST.
(m2_print_unbounded_array): Likewise.
(m2_print_array_contents): Likewise.
(m2_val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
Expand I, LEN, TEMP_LEN to ULONGEST.
* memrange.c (mem_ranges_overlap): Expand parameters LEN1, LEN2 to
LONGEST.
* memrange.h (struct mem_range): Expand member LENGTH to LONGEST.
(mem_ranges_overlap): Expand parameters LEN1, LEN2 to LONGEST.
* mips-linux-nat.c (mips_linux_region_ok_for_hw_watchpoint):
Expand parameter LEN to LONGEST.
* objc-lang.c (objc_printstr): Expand parameter LENGTH to
ULONGEST. Expand I, REP1, REPS to ULONGEST. use pulongest to
format print REPS.
* opencl-lang.c (lookup_opencl_vector_type): Expand parameter
EL_LENGTH to ULONGEST. Expand LENGTH to ULONGEST.
(lval_func_read): Expand OFFSET, N, I, J and ELSIZE to LONGEST.
(lval_func_write): Likewise.
(lval_func_check_validity): Expand parameter LENGTH to LONGEST.
Expand ELSIZE, START, END, I, STARTREST, ENDREST, COMP_OFFSET,
COMP_LENGTH to LONGEST.
(lval_func_check_any_valid): Expand ELSIZE to LONGEST.
(lval_func_check_synthetic_pointer): Expand parameters OFFSET and
LENGTH to LONGEST. Expand ELSIZE, START, END, I, STARTREST,
ENDREST, COMP_LENGTH, COMP_OFFSET to LONGEST.
* p-lang.c (is_pascal_string_type): Expand parameters LENGTH_POS,
STRING_POS, LENGTH_SIZE to point to LONGEST.
(pascal_printstr): Expand parameter LENGTH to ULONGEST. Expand
I, REP1, REPS to ULONGEST. Use pulongest to format print REPS.
* p-lang.h (pascal_val_print): Expand parameter EMBEDDED_OFFSET
to LONGEST.
(is_pascal_string_type): Expand parameters LENGTH_POS, STRING_POS,
LENGTH_SIZE to point to LONGEST.
(pascal_printstr): Expand parameter LENGTH to ULONGEST.
(pascal_object_print_value_fields): Expand parameter OFFSET to
LONGEST.
* p-valprint.c (pascal_val_print): Expand parameter
EMBEDDED_OFFSET to LONGEST. Expand ELTLEN to ULONGEST. Expand
LENGTH_SIZE, LENGTH_POS, STRING_POS to LONGEST.
(pascal_object_print_value_fields): Expand parameter OFFSET to
LONGEST.
(pascal_object_print_value): Likewise. Expand BOFFSET,
THISOFFSET to LONGEST.
* ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint):
Expand parameter LEN to point to LONGEST.
* printcmd.c (print_formatted): Expand LEN to LONGEST.
(print_scalar_formatted): Likewise.
* procfs.c (procfs_region_ok_for_hw_watchpoint): Expand
parameter LEN to LONGEST.
* python/py-prettyprint.c (apply_val_pretty_printer): Expand
parameter EMBEDDED_OFFSET to LONGEST.
* python/python.h (apply_val_pretty_printer): Likewise.
* regcache.c (regcache_xfer_part): Expand parameter OFFSET to
LONGEST.
(regcache_raw_read_part): Likewise.
(regcache_raw_write_part): Likewise.
(regcache_cooked_read_part): Likewise.
(regcache_cooked_write_part): Likewise.
* regcache.h (regcache_raw_read_part): Likewise.
(regcache_raw_write_part): Likewise.
(regcache_cooked_read_part): Likewise.
(regcache_cooked_write_part): Likewise.
* remote.c (remote_region_ok_for_hw_watchpoint): Expand
parameter LEN to LONGEST.
* s390-nat.c (s390_region_ok_for_hw_watchpoint): Expand
parameter LEN to LONGEST.
* spu-multiarch.c (spu_region_ok_for_hw_watchpoint): Expand
parameter len to LONGEST.
* stack.c (print_frame_nameless_args): Expand parameter START to
LONGEST.
(print_frame_args): Expand HIGHEST_OFFSET, CURRENT_OFFSET,
ARG_SIZE, START to LONGEST.
* symmisc.c (print_symbol): Expand I to ULONGEST. Use pulongest
to format print TYPE_LENGTH.
* target.c (default_region_ok_for_hw_watchpoint): Expand parameter
LEN to LONGEST.
(debug_to_region_ok_for_hw_watchpoint): Likewise.
* target.h (struct target_ops): Expand parameter LEN to LONGEST
for TO_REGION_OK_FOR_HW_WATCHPOINT.
* tracepoint.c (add_memrange): Expand parameter LEN to LONGEST.
Use plongest to format print LEN.
(collect_symbol): Expand LEN to ULONGEST. Use pulongest to
format print LEN.
(scope_info): Expand J to LONGEST. Use pulongest to format
print TYPE_LENGTH.
* typeprint.c (whatis_exp): Expand TOP to LONGEST.
* valarith.c (value_subscripted_rvalue): Expand parameters INDEX
and LOWERBOUND to LONGEST. Expand ELT_SIZE, ELT_OFFS to ULONGEST.
(value_concat): expand INVAL1LEN and INVAL2LEN to ssize_t.
(value_logical_not): Expand LEN to LONGEST.
(value_strcmp): Expand LEN1, LEN2, I, LEN to LONGEST.
* valops.c (value_allocate_space_in_inferior): Expand parameter
LEN to LONGEST.
(value_cast_structs): Expand TOP to LONGEST.
(value_cast): Expand ELEMENT_LENGTH to ULONGEST. Expand
VAL_LENGTH to LONGEST.
(dynamic_cast_check_1): Expand parameter EMBEDDED_OFFSET to
LONGEST. Expand OFFSET to LONGEST.
(dynamic_cast_check_2): Likewise.
(value_dynamic_cast): Expand TOP to LONGEST.
(read_value_memory): Expand EMBEDDED_OFFSET to LONGEST.
(value_assign): Expand CHANGED_LEN, OFFSET to LONGEST.
(value_array): Expand TYPELENGTH to ULONGEST.
(update_search_result): Expand parameters LAST_BOFFSET, BOFFSET
to LONGEST.
(do_search_struct_field): Expand parameter OFFSET, LAST_BOFFSET
to LONGEST. Expand NEW_OFFSET, BOFFSET to LONGEST.
(search_struct_field): Expand parameter OFFSET to LONGEST.
Expand BOFFSET to LONGEST.
(search_struct_method): Expand parameter OFFSET to LONGEST.
Expand BASE_OFFSET, THIS_OFFSET to LONGEST.
(find_method_list): Expand parameters OFFSET, BOFFSET to
LONGEST. Expand BASE_OFFSET to LONGEST.
(value_find_oload_method_list): Expand parameter BOFFSET to point
to LONGEST.
(find_overload_match): Expand BOFFSET to LONGEST.
(value_struct_elt_for_reference): Expand parameter OFFSET to
LONGEST. Remove unneeded cast. Expand BASE_OFFSET to LONGEST.
(value_rtti_indirect_type): Expand parameter TOP to point to
LONGEST.
(value_full_object): Expand parameter XTOP to LONGEST. Expand
TOP to LONGEST.
* valprint.c (valprint_check_validity): Expand parameter
EMBEDDED_OFFSET to LONGEST.
(generic_val_print): Likewise.
(val_print): Likewise.
(val_print_scalar_formatted): Likewise.
(print_hex_chars): Expand parameter LEN to ULONGEST.
(val_print_array_elements): Expand parameter EMBEDDED_OFFSET to
LONGEST, I to ULONGEST. Expand LEN, ELTLEN, REP1, REPS to
ULONGEST. Use pulongest to format print REPS.
(generic_printstr): Expand parameter LENGTH to ULONGEST.
* valprint.h (val_print_array_elements): Expand parameter
EMBEDDED_OFFSET to LONGEST.
(val_print_scalar_formatted): Likewise.
(print_hex_chars): Expand parameter LEN to ULONGEST.
(generic_val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
(generic_printstr): Expand parameter LENGTH to ULONGEST.
* value.c (struct range): Expand members OFFSET, LENGTH to
LONGEST.
(ranges_overlap): Expand parameters OFFSET1, OFFSET2, LEN1 AND
LEN2 to LONGEST.
(range_contain): Expand parameter OFFSET, LENGTH to LONGEST.
(struct value): Expand members OFFSET, EMBEDDED_OFFSET,
POINTED_TO_OFFSET to LONGEST.
(value_bytes_available): Expand parameters OFFSET, LENGTH to
LONGEST.
(mark_value_bytes_unavailable): Likewise.
(find_first_range_overlap): Likewise.
(value_available_contents_eq): Expand parameters OFFSET1, OFFSET2
and LENGTH to LONGEST.
(value_offset): Return LONGEST.
(set_value_offset): Expand parameter OFFSET to LONGEST.
(value_contents_copy_raw): Expand parameters SRC_OFFSET,
DST_OFFSET, LENGTH to ssize_t.
(value_contents_copy): Likewise.
(value_bits_valid): Expand parameters OFFSET, LENGTH to LONGEST.
(value_bits_synthetic_pointer): Likewise.
(value_embedded_offset): Return LONGEST.
(set_value_embedded_offset): Expand parameter VAL to LONGEST.
(value_pointed_to_offset): Return LONGEST.
(set_value_pointed_to_offset): Expand parameter VAL to LONGEST.
(set_internalvar_component): Expand parameter OFFSET to LONGEST.
(value_primitive_field): Likewise. Expand BITPOS, BOFFSET,
CONTAINER_BITSIZE to LONGEST.
(value_fn_field): Expand parameter OFFSET to LONGEST.
(unpack_value_bits_as_long_1): Expand parameters EMBEDDED_OFFSET,
BITPOS to LONGEST. Expand READ_OFFSET to LONGEST.
(unpack_value_bits_as_long): Expand parameter EMBEDED_OFFSET to
LONGEST.
(unpack_value_field_as_long_1): Likewise. Expand BITPOS to
LONGEST.
(unpack_value_field_as_long): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(value_field_bitfield): Likewise.
(modify_field): Expand parameter BITPOS to LONGEST. Expand
BYTESIZE to LONGEST.
* value.h (value_offset): Return LONGEST.
(set_value_offset): Expand parameter OFFSET to LONGEST.
(value_pointed_to_offset): Return LONGEST.
(set_value_pointed_to_offset): Expand parameter VAL to LONGEST.
(value_embedded_offset): Return LONGEST.
(set_value_embedded_offset): Expand parameter VAL to LONGEST.
(struct lval_funcs): Expand parameters OFFSET and LENGTH to
LONGEST for CHECK_VALIDITY. Likewise for CHECK_SYNTHETIC_POINTER.
(valprint_check_validity): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(value_bits_valid): Expand parameters OFFSET, LENGTH to LONGEST.
(value_bits_synthetic_pointer): Likewise.
(value_bytes_available): Likewise.
(mark_value_bytes_unavailable): Likewise.
(value_available_contents_eq): Fix comment. Expand parameters
OFFSET1, OFFSET2, LENGTH to LONGEST.
(read_value_memory): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(unpack_value_bits_as_long): Expand parameter EMBEDDED_OFFSET to
LONGEST.
(unpack_value_field_as_long): Likewise.
(value_field_bitfield): Likewise.
(value_contents_copy_raw): Expand parameters SRC_OFFSET,
DST_OFFSET, LENGTH to LONGEST.
(value_contents_copy): Likewise.
(value_primitive_field): Expand parameter OFFSET to LONGEST.
(value_rtti_indirect_type): Expand parameter TOP to point to
LONGEST.
(value_full_object): Expand parameter XTOP to LONGEST.
(set_internalvar_component): Expand parameter OFFSET to LONGEST.
(value_fn_field): Expand parameter OFFSET to LONGEST.
(modify_field): Expand parameter BITPOS to LONGEST.
(val_print): Expand parameter EMBEDDED_OFFSET to LONGEST.
(value_allocate_space_in_inferior): Expand parameter LEN to
LONGEST.
gdb/testsuite/ChangeLog:
2012-08-05 Siddhesh Poyarekar <siddhesh@redhat.com>
* gdb.base/longest-types.exp: Add test case to get offset of
BUF2.
--MP_/yp5f+W_ED2JtUlSyBi8xujr
Content-Type: text/x-patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=bitpos-main.patch
Index: gdb-8.0/gdb/ada-lang.c
===================================================================
--- gdb-8.0.orig/gdb/ada-lang.c 2017-08-19 20:04:59.785780501 +0200
+++ gdb-8.0/gdb/ada-lang.c 2017-08-19 20:05:10.056876589 +0200
@@ -76,7 +76,7 @@
static struct value *desc_bounds (struct value *);
-static int fat_pntr_bounds_bitpos (struct type *);
+static LONGEST fat_pntr_bounds_bitpos (struct type *);
static int fat_pntr_bounds_bitsize (struct type *);
@@ -84,13 +84,13 @@
static struct value *desc_data (struct value *);
-static int fat_pntr_data_bitpos (struct type *);
+static LONGEST fat_pntr_data_bitpos (struct type *);
static int fat_pntr_data_bitsize (struct type *);
static struct value *desc_one_bound (struct value *, int, int);
-static int desc_bound_bitpos (struct type *, int, int);
+static LONGEST desc_bound_bitpos (struct type *, int, int);
static int desc_bound_bitsize (struct type *, int, int);
@@ -173,7 +173,7 @@
static struct value *unwrap_value (struct value *);
-static struct type *constrained_packed_array_type (struct type *, long *);
+static struct type *constrained_packed_array_type (struct type *, LONGEST *);
static struct type *decode_constrained_packed_array_type (struct type *);
@@ -188,7 +188,8 @@
static struct value *value_subscript_packed (struct value *, int,
struct value **);
-static void move_bits (gdb_byte *, int, const gdb_byte *, int, int, int);
+static void move_bits (gdb_byte *, int, const gdb_byte *, LONGEST, LONGEST,
+ int);
static struct value *coerce_unspec_val_to_type (struct value *,
struct type *);
@@ -216,14 +217,14 @@
static struct symbol *standard_lookup (const char *, const struct block *,
domain_enum);
-static struct value *ada_search_struct_field (const char *, struct value *, int,
+static struct value *ada_search_struct_field (const char *, struct value *, LONGEST,
struct type *);
-static struct value *ada_value_primitive_field (struct value *, int, int,
+static struct value *ada_value_primitive_field (struct value *, LONGEST, int,
struct type *);
-static int find_struct_field (const char *, struct type *, int,
- struct type **, int *, int *, int *, int *);
+static int find_struct_field (const char *, struct type *, LONGEST,
+ struct type **, LONGEST *, int *, int *, int *);
static struct value *ada_to_fixed_value_create (struct type *, CORE_ADDR,
struct value *);
@@ -237,7 +238,7 @@
static void ada_language_arch_info (struct gdbarch *,
struct language_arch_info *);
-static struct value *ada_index_struct_field (int, struct value *, int,
+static struct value *ada_index_struct_field (LONGEST, struct value *, LONGEST,
struct type *);
static struct value *assign_aggregate (struct value *, struct value *,
@@ -699,7 +700,7 @@
}
static const gdb_byte *
-cond_offset_host (const gdb_byte *valaddr, long offset)
+cond_offset_host (const gdb_byte *valaddr, LONGEST offset)
{
if (valaddr == NULL)
return NULL;
@@ -708,7 +709,7 @@
}
static CORE_ADDR
-cond_offset_target (CORE_ADDR address, long offset)
+cond_offset_target (CORE_ADDR address, LONGEST offset)
{
if (address == 0)
return 0;
@@ -1755,7 +1756,7 @@
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the bounds data. */
-static int
+static LONGEST
fat_pntr_bounds_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 1);
@@ -1821,7 +1822,7 @@
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the data. */
-static int
+static LONGEST
fat_pntr_data_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 0);
@@ -1856,7 +1857,7 @@
of the Ith lower bound stored in it, if WHICH is 0, and the Ith upper
bound, if WHICH is 1. The first bound is I=1. */
-static int
+static LONGEST
desc_bound_bitpos (struct type *type, int i, int which)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 2 * i + which - 2);
@@ -2046,7 +2047,7 @@
zero, and does not need to be recomputed. */
if (lo < hi)
{
- int array_bitsize =
+ LONGEST array_bitsize =
(hi - lo + 1) * TYPE_FIELD_BITSIZE (elt_type, 0);
TYPE_LENGTH (array_type) = (array_bitsize + 7) / 8;
@@ -2206,7 +2207,7 @@
the length is arbitrary. */
static struct type *
-constrained_packed_array_type (struct type *type, long *elt_bits)
+constrained_packed_array_type (struct type *type, LONGEST *elt_bits)
{
struct type *new_elt_type;
struct type *new_type;
@@ -2260,7 +2261,7 @@
char *name;
const char *tail;
struct type *shadow_type;
- long bits;
+ LONGEST bits;
if (!raw_name)
raw_name = ada_type_name (desc_base_type (type));
@@ -2331,7 +2332,8 @@
array with no wrapper. In order to interpret the value through
the (left-justified) packed array type we just built, we must
first left-justify it. */
- int bit_size, bit_pos;
+ int bit_size;
+ LONGEST bit_pos;
ULONGEST mod;
mod = ada_modulus (value_type (arr)) - 1;
@@ -2559,7 +2561,7 @@
struct value *
ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
- long offset, int bit_offset, int bit_size,
+ LONGEST offset, int bit_offset, int bit_size,
struct type *type)
{
struct value *v;
@@ -2630,7 +2632,7 @@
if (obj != NULL)
{
- long new_offset = offset;
+ LONGEST new_offset = offset;
set_value_component_location (v, obj);
set_value_bitpos (v, bit_offset + value_bitpos (obj));
@@ -2676,7 +2678,7 @@
not overlap. */
static void
move_bits (gdb_byte *target, int targ_offset, const gdb_byte *source,
- int src_offset, int n, int bits_big_endian_p)
+ LONGEST src_offset, LONGEST n, int bits_big_endian_p)
{
unsigned int accum, mask;
int accum_bits, chunk_size;
@@ -2766,7 +2768,7 @@
{
int len = (value_bitpos (toval)
+ bits + HOST_CHAR_BIT - 1) / HOST_CHAR_BIT;
- int from_size;
+ LONGEST from_size;
gdb_byte *buffer = (gdb_byte *) alloca (len);
struct value *val;
CORE_ADDR to_addr = value_address (toval);
@@ -2817,7 +2819,7 @@
(LONGEST) (value_address (component) - value_address (container));
int bit_offset_in_container =
value_bitpos (component) - value_bitpos (container);
- int bits;
+ LONGEST bits;
val = value_cast (value_type (component), val);
@@ -4468,7 +4470,7 @@
if (VALUE_LVAL (val) == not_lval
|| VALUE_LVAL (val) == lval_internalvar)
{
- int len = TYPE_LENGTH (ada_check_typedef (value_type (val)));
+ LONGEST len = TYPE_LENGTH (ada_check_typedef (value_type (val)));
const CORE_ADDR addr =
value_as_long (value_allocate_space_in_inferior (len));
@@ -4552,7 +4554,7 @@
value_pointer (struct value *value, struct type *type)
{
struct gdbarch *gdbarch = get_type_arch (type);
- unsigned len = TYPE_LENGTH (type);
+ ULONGEST len = TYPE_LENGTH (type);
gdb_byte *buf = (gdb_byte *) alloca (len);
CORE_ADDR addr;
@@ -6752,7 +6754,7 @@
const gdb_byte *valaddr,
CORE_ADDR address)
{
- int tag_byte_offset;
+ LONGEST tag_byte_offset;
struct type *tag_type;
if (find_struct_field ("_tag", type, 0, &tag_type, &tag_byte_offset,
@@ -7233,7 +7235,7 @@
only in that it can handle packed values of arbitrary type. */
static struct value *
-ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
+ada_value_primitive_field (struct value *arg1, LONGEST offset, int fieldno,
struct type *arg_type)
{
struct type *type;
@@ -7245,7 +7247,7 @@
if (TYPE_FIELD_BITSIZE (arg_type, fieldno) != 0)
{
- int bit_pos = TYPE_FIELD_BITPOS (arg_type, fieldno);
+ LONGEST bit_pos = TYPE_FIELD_BITPOS (arg_type, fieldno);
int bit_size = TYPE_FIELD_BITSIZE (arg_type, fieldno);
return ada_value_primitive_packed_val (arg1, value_contents (arg1),
@@ -7272,9 +7274,9 @@
Returns 1 if found, 0 otherwise. */
static int
-find_struct_field (const char *name, struct type *type, int offset,
+find_struct_field (const char *name, struct type *type, LONGEST offset,
struct type **field_type_p,
- int *byte_offset_p, int *bit_offset_p, int *bit_size_p,
+ LONGEST *byte_offset_p, int *bit_offset_p, int *bit_size_p,
int *index_p)
{
int i;
@@ -7292,8 +7294,8 @@
for (i = 0; i < TYPE_NFIELDS (type); i += 1)
{
- int bit_pos = TYPE_FIELD_BITPOS (type, i);
- int fld_offset = offset + bit_pos / 8;
+ LONGEST bit_pos = TYPE_FIELD_BITPOS (type, i);
+ LONGEST fld_offset = offset + bit_pos / 8;
const char *t_field_name = TYPE_FIELD_NAME (type, i);
if (t_field_name == NULL)
@@ -7363,7 +7365,7 @@
Searches recursively through wrapper fields (e.g., '_parent'). */
static struct value *
-ada_search_struct_field (const char *name, struct value *arg, int offset,
+ada_search_struct_field (const char *name, struct value *arg, LONGEST offset,
struct type *type)
{
int i;
@@ -7396,7 +7398,7 @@
int j;
struct type *field_type = ada_check_typedef (TYPE_FIELD_TYPE (type,
i));
- int var_offset = offset + TYPE_FIELD_BITPOS (type, i) / 8;
+ LONGEST var_offset = offset + TYPE_FIELD_BITPOS (type, i) / 8;
for (j = 0; j < TYPE_NFIELDS (field_type); j += 1)
{
@@ -7414,8 +7416,8 @@
return NULL;
}
-static struct value *ada_index_struct_field_1 (int *, struct value *,
- int, struct type *);
+static struct value *ada_index_struct_field_1 (LONGEST *, struct value *,
+ LONGEST, struct type *);
/* Return field #INDEX in ARG, where the index is that returned by
@@ -7424,7 +7426,7 @@
* If found, return value, else return NULL. */
static struct value *
-ada_index_struct_field (int index, struct value *arg, int offset,
+ada_index_struct_field (LONGEST index, struct value *arg, LONGEST offset,
struct type *type)
{
return ada_index_struct_field_1 (&index, arg, offset, type);
@@ -7436,7 +7438,7 @@
* *INDEX_P. */
static struct value *
-ada_index_struct_field_1 (int *index_p, struct value *arg, int offset,
+ada_index_struct_field_1 (LONGEST *index_p, struct value *arg, LONGEST offset,
struct type *type)
{
int i;
@@ -7526,7 +7528,8 @@
v = ada_search_struct_field (name, arg, 0, t);
else
{
- int bit_offset, bit_size, byte_offset;
+ int bit_offset, bit_size;
+ LONGEST byte_offset;
struct type *field_type;
CORE_ADDR address;
@@ -7832,8 +7835,8 @@
/* Return OFF rounded upward if necessary to a multiple of
ALIGNMENT (a power of 2). */
-static unsigned int
-align_value (unsigned int off, unsigned int alignment)
+static ULONGEST
+align_value (ULONGEST off, ULONGEST alignment)
{
return (off + alignment - 1) & ~(alignment - 1);
}
@@ -8227,10 +8230,9 @@
struct value *mark = value_mark ();
struct value *dval;
struct type *rtype;
- int nfields, bit_len;
+ int nfields;
int variant_field;
- long off;
- int fld_bit_len;
+ LONGEST off, bit_len, fld_bit_len;
int f;
/* Compute the number of fields in this record type that are going
@@ -8308,7 +8310,7 @@
that follow this one. */
if (ada_is_aligner_type (field_type))
{
- long field_offset = TYPE_FIELD_BITPOS (field_type, f);
+ LONGEST field_offset = TYPE_FIELD_BITPOS (field_type, f);
field_valaddr = cond_offset_host (field_valaddr, field_offset);
field_address = cond_offset_target (field_address, field_offset);
@@ -8444,11 +8446,11 @@
if (TYPE_LENGTH (type) <= 0)
{
if (TYPE_NAME (rtype))
- warning (_("Invalid type size for `%s' detected: %d."),
- TYPE_NAME (rtype), TYPE_LENGTH (type));
+ warning (_("Invalid type size for `%s' detected: %s."),
+ TYPE_NAME (rtype), pulongest (TYPE_LENGTH (type)));
else
- warning (_("Invalid type size for <unnamed> detected: %d."),
- TYPE_LENGTH (type));
+ warning (_("Invalid type size for <unnamed> detected: %s."),
+ pulongest (TYPE_LENGTH (type)));
}
else
{
@@ -8915,7 +8917,8 @@
type was a regular (non-packed) array type. As a result, the
bitsize of the array elements needs to be set again, and the array
length needs to be recomputed based on that bitsize. */
- int len = TYPE_LENGTH (result) / TYPE_LENGTH (TYPE_TARGET_TYPE (result));
+ LONGEST len = (TYPE_LENGTH (result)
+ / TYPE_LENGTH (TYPE_TARGET_TYPE (result)));
int elt_bitsize = TYPE_FIELD_BITSIZE (type0, 0);
TYPE_FIELD_BITSIZE (result, 0) = TYPE_FIELD_BITSIZE (type0, 0);
Index: gdb-8.0/gdb/ada-lang.h
===================================================================
--- gdb-8.0.orig/gdb/ada-lang.h 2017-08-19 20:04:59.786780510 +0200
+++ gdb-8.0/gdb/ada-lang.h 2017-08-19 20:05:10.056876589 +0200
@@ -168,7 +168,7 @@
extern void ada_print_typedef (struct type *type, struct symbol *new_symbol,
struct ui_file *stream);
-extern void ada_val_print (struct type *, int, CORE_ADDR,
+extern void ada_val_print (struct type *, LONGEST, CORE_ADDR,
struct ui_file *, int,
struct value *,
const struct value_print_options *);
@@ -183,7 +183,7 @@
extern void ada_printchar (int, struct type *, struct ui_file *);
extern void ada_printstr (struct ui_file *, struct type *, const gdb_byte *,
- unsigned int, const char *, int,
+ ULONGEST, const char *, int,
const struct value_print_options *);
struct value *ada_convert_actual (struct value *actual,
@@ -255,7 +255,7 @@
extern struct value *ada_value_primitive_packed_val (struct value *,
const gdb_byte *,
- long, int, int,
+ LONGEST, int, int,
struct type *);
extern struct type *ada_coerce_to_simple_array_type (struct type *);
Index: gdb-8.0/gdb/ada-typeprint.c
===================================================================
--- gdb-8.0.orig/gdb/ada-typeprint.c 2017-08-19 20:04:59.786780510 +0200
+++ gdb-8.0/gdb/ada-typeprint.c 2017-08-19 20:05:10.057876598 +0200
@@ -891,8 +891,8 @@
const char *name = ada_type_name (type);
if (!ada_is_range_type_name (name))
- fprintf_filtered (stream, _("<%d-byte integer>"),
- TYPE_LENGTH (type));
+ fprintf_filtered (stream, _("<%s-byte integer>"),
+ pulongest (TYPE_LENGTH (type)));
else
{
fprintf_filtered (stream, "range ");
@@ -913,7 +913,8 @@
}
break;
case TYPE_CODE_FLT:
- fprintf_filtered (stream, _("<%d-byte float>"), TYPE_LENGTH (type));
+ fprintf_filtered (stream, _("<%s-byte float>"),
+ pulongest (TYPE_LENGTH (type)));
break;
case TYPE_CODE_ENUM:
if (show < 0)
Index: gdb-8.0/gdb/ada-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/ada-valprint.c 2017-08-19 20:04:59.787780520 +0200
+++ gdb-8.0/gdb/ada-valprint.c 2017-08-19 20:05:10.057876598 +0200
@@ -33,11 +33,11 @@
#include "objfiles.h"
static int print_field_values (struct type *, const gdb_byte *,
- int,
+ LONGEST,
struct ui_file *, int,
struct value *,
const struct value_print_options *,
- int, struct type *, int,
+ int, struct type *, LONGEST,
const struct language_defn *);
@@ -279,7 +279,7 @@
of a character. */
static int
-char_at (const gdb_byte *string, int i, int type_len,
+char_at (const gdb_byte *string, LONGEST i, int type_len,
enum bfd_endian byte_order)
{
if (type_len == 1)
@@ -439,11 +439,11 @@
static void
printstr (struct ui_file *stream, struct type *elttype, const gdb_byte *string,
- unsigned int length, int force_ellipses, int type_len,
+ ULONGEST length, int force_ellipses, int type_len,
const struct value_print_options *options)
{
enum bfd_endian byte_order = gdbarch_byte_order (get_type_arch (elttype));
- unsigned int i;
+ ULONGEST i;
unsigned int things_printed = 0;
int in_quotes = 0;
int need_comma = 0;
@@ -458,9 +458,9 @@
{
/* Position of the character we are examining
to see whether it is repeated. */
- unsigned int rep1;
+ ULONGEST rep1;
/* Number of repetitions we have detected so far. */
- unsigned int reps;
+ ULONGEST reps;
QUIT;
@@ -491,7 +491,8 @@
ada_emit_char (char_at (string, i, type_len, byte_order),
elttype, stream, '\'', type_len);
fputs_filtered ("'", stream);
- fprintf_filtered (stream, _(" <repeats %u times>"), reps);
+ fprintf_filtered (stream, _(" <repeats %s times>"),
+ pulongest (reps));
i = rep1 - 1;
things_printed += options->repeat_count_threshold;
need_comma = 1;
@@ -519,7 +520,7 @@
void
ada_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
@@ -529,12 +530,12 @@
static int
print_variant_part (struct type *type, int field_num,
- const gdb_byte *valaddr, int offset,
+ const gdb_byte *valaddr, LONGEST offset,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options,
int comma_needed,
- struct type *outer_type, int outer_offset,
+ struct type *outer_type, LONGEST outer_offset,
const struct language_defn *language)
{
struct type *var_type = TYPE_FIELD_TYPE (type, field_num);
@@ -570,11 +571,11 @@
static int
print_field_values (struct type *type, const gdb_byte *valaddr,
- int offset, struct ui_file *stream, int recurse,
+ LONGEST offset, struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options,
int comma_needed,
- struct type *outer_type, int outer_offset,
+ struct type *outer_type, LONGEST outer_offset,
const struct language_defn *language)
{
int i, len;
@@ -640,7 +641,7 @@
else
{
struct value *v;
- int bit_pos = TYPE_FIELD_BITPOS (type, i);
+ LONGEST bit_pos = TYPE_FIELD_BITPOS (type, i);
int bit_size = TYPE_FIELD_BITSIZE (type, i);
struct value_print_options opts;
@@ -685,8 +686,8 @@
{
enum bfd_endian byte_order = gdbarch_byte_order (get_type_arch (type));
struct type *elttype = TYPE_TARGET_TYPE (type);
- unsigned int eltlen;
- unsigned int len;
+ ULONGEST eltlen;
+ ULONGEST len;
/* We know that ELTTYPE cannot possibly be null, because we assume
that we're called only when TYPE is a string-like type.
@@ -705,7 +706,7 @@
elements up to it. */
if (options->stop_print_at_null)
{
- int temp_len;
+ LONGEST temp_len;
/* Look for a NULL char. */
for (temp_len = 0;
@@ -1072,7 +1073,7 @@
static void
ada_val_print_1 (struct type *type,
- int offset, CORE_ADDR address,
+ LONGEST offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options,
@@ -1156,7 +1157,7 @@
void
ada_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options)
Index: gdb-8.0/gdb/annotate.c
===================================================================
--- gdb-8.0.orig/gdb/annotate.c 2017-08-19 20:04:59.787780520 +0200
+++ gdb-8.0/gdb/annotate.c 2017-08-19 20:05:10.057876598 +0200
@@ -533,21 +533,21 @@
}
void
-annotate_array_section_begin (int idx, struct type *elttype)
+annotate_array_section_begin (LONGEST idx, struct type *elttype)
{
if (annotation_level == 2)
{
- printf_filtered (("\n\032\032array-section-begin %d "), idx);
+ printf_filtered (("\n\032\032array-section-begin %s "), plongest (idx));
print_value_flags (elttype);
printf_filtered (("\n"));
}
}
void
-annotate_elt_rep (unsigned int repcount)
+annotate_elt_rep (ULONGEST repcount)
{
if (annotation_level == 2)
- printf_filtered (("\n\032\032elt-rep %u\n"), repcount);
+ printf_filtered (("\n\032\032elt-rep %s\n"), pulongest (repcount));
}
void
Index: gdb-8.0/gdb/annotate.h
===================================================================
--- gdb-8.0.orig/gdb/annotate.h 2017-08-19 20:04:59.788780529 +0200
+++ gdb-8.0/gdb/annotate.h 2017-08-19 20:05:10.058876607 +0200
@@ -92,8 +92,8 @@
extern void annotate_frame_where (void);
extern void annotate_frame_end (void);
-extern void annotate_array_section_begin (int, struct type *);
-extern void annotate_elt_rep (unsigned int);
+extern void annotate_array_section_begin (LONGEST, struct type *);
+extern void annotate_elt_rep (ULONGEST);
extern void annotate_elt_rep_end (void);
extern void annotate_elt (void);
extern void annotate_array_section_end (void);
Index: gdb-8.0/gdb/arm-linux-nat.c
===================================================================
--- gdb-8.0.orig/gdb/arm-linux-nat.c 2017-08-19 20:04:59.788780529 +0200
+++ gdb-8.0/gdb/arm-linux-nat.c 2017-08-19 20:05:10.058876607 +0200
@@ -1067,7 +1067,7 @@
ADDR? */
static int
arm_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
const struct arm_linux_hwbp_cap *cap = arm_linux_get_hwbp_cap ();
CORE_ADDR max_wp_length, aligned_addr;
Index: gdb-8.0/gdb/ax-gdb.c
===================================================================
--- gdb-8.0.orig/gdb/ax-gdb.c 2017-08-19 20:04:59.789780538 +0200
+++ gdb-8.0/gdb/ax-gdb.c 2017-08-19 20:05:10.059876617 +0200
@@ -83,12 +83,12 @@
static void gen_sign_extend (struct agent_expr *, struct type *);
static void gen_extend (struct agent_expr *, struct type *);
static void gen_fetch (struct agent_expr *, struct type *);
-static void gen_left_shift (struct agent_expr *, int);
+static void gen_left_shift (struct agent_expr *, LONGEST);
static void gen_frame_args_address (struct gdbarch *, struct agent_expr *);
static void gen_frame_locals_address (struct gdbarch *, struct agent_expr *);
-static void gen_offset (struct agent_expr *ax, int offset);
+static void gen_offset (struct agent_expr *ax, LONGEST offset);
static void gen_sym_offset (struct agent_expr *, struct symbol *);
static void gen_var_ref (struct gdbarch *, struct agent_expr *ax,
struct axs_value *value, struct symbol *var);
@@ -137,15 +137,15 @@
static void gen_address_of (struct agent_expr *, struct axs_value *);
static void gen_bitfield_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
- struct type *type, int start, int end);
+ struct type *type, LONGEST start, LONGEST end);
static void gen_primitive_field (struct expression *exp,
struct agent_expr *ax,
struct axs_value *value,
- int offset, int fieldno, struct type *type);
+ LONGEST offset, int fieldno, struct type *type);
static int gen_struct_ref_recursive (struct expression *exp,
struct agent_expr *ax,
struct axs_value *value,
- const char *field, int offset,
+ const char *field, LONGEST offset,
struct type *type);
static void gen_struct_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
@@ -541,7 +541,7 @@
right shift it by -DISTANCE bits if DISTANCE < 0. This generates
unsigned (logical) right shifts. */
static void
-gen_left_shift (struct agent_expr *ax, int distance)
+gen_left_shift (struct agent_expr *ax, LONGEST distance)
{
if (distance > 0)
{
@@ -595,7 +595,7 @@
programming in ML, it would be clearer why these are the same
thing. */
static void
-gen_offset (struct agent_expr *ax, int offset)
+gen_offset (struct agent_expr *ax, LONGEST offset)
{
/* It would suffice to simply push the offset and add it, but this
makes it easier to read positive and negative offsets in the
@@ -1251,7 +1251,7 @@
static void
gen_bitfield_ref (struct expression *exp, struct agent_expr *ax,
struct axs_value *value, struct type *type,
- int start, int end)
+ LONGEST start, LONGEST end)
{
/* Note that ops[i] fetches 8 << i bits. */
static enum agent_op ops[]
@@ -1286,13 +1286,13 @@
/* The first and one-after-last bits in the field, but rounded down
and up to byte boundaries. */
- int bound_start = (start / TARGET_CHAR_BIT) * TARGET_CHAR_BIT;
- int bound_end = (((end + TARGET_CHAR_BIT - 1)
- / TARGET_CHAR_BIT)
- * TARGET_CHAR_BIT);
+ LONGEST bound_start = (start / TARGET_CHAR_BIT) * TARGET_CHAR_BIT;
+ LONGEST bound_end = (((end + TARGET_CHAR_BIT - 1)
+ / TARGET_CHAR_BIT)
+ * TARGET_CHAR_BIT);
/* current bit offset within the structure */
- int offset;
+ LONGEST offset;
/* The index in ops of the opcode we're considering. */
int op;
@@ -1411,7 +1411,7 @@
static void
gen_primitive_field (struct expression *exp,
struct agent_expr *ax, struct axs_value *value,
- int offset, int fieldno, struct type *type)
+ LONGEST offset, int fieldno, struct type *type)
{
/* Is this a bitfield? */
if (TYPE_FIELD_PACKED (type, fieldno))
@@ -1436,7 +1436,7 @@
static int
gen_struct_ref_recursive (struct expression *exp, struct agent_expr *ax,
struct axs_value *value,
- const char *field, int offset, struct type *type)
+ const char *field, LONGEST offset, struct type *type)
{
int i, rslt;
int nbases = TYPE_N_BASECLASSES (type);
Index: gdb-8.0/gdb/ax-general.c
===================================================================
--- gdb-8.0.orig/gdb/ax-general.c 2017-08-19 20:04:59.789780538 +0200
+++ gdb-8.0/gdb/ax-general.c 2017-08-19 20:05:10.059876617 +0200
@@ -177,7 +177,7 @@
/* Append a trace_quick instruction to EXPR, to record N bytes. */
void
-ax_trace_quick (struct agent_expr *x, int n)
+ax_trace_quick (struct agent_expr *x, LONGEST n)
{
/* N must fit in a byte. */
if (n < 0 || n > 255)
Index: gdb-8.0/gdb/ax.h
===================================================================
--- gdb-8.0.orig/gdb/ax.h 2017-08-19 20:04:59.789780538 +0200
+++ gdb-8.0/gdb/ax.h 2017-08-19 20:05:10.059876617 +0200
@@ -205,7 +205,7 @@
extern void ax_zero_ext (struct agent_expr *EXPR, int N);
/* Append a trace_quick instruction to EXPR, to record N bytes. */
-extern void ax_trace_quick (struct agent_expr *EXPR, int N);
+extern void ax_trace_quick (struct agent_expr *EXPR, LONGEST N);
/* Append a goto op to EXPR. OP is the actual op (must be aop_goto or
aop_if_goto). We assume we don't know the target offset yet,
Index: gdb-8.0/gdb/breakpoint.c
===================================================================
--- gdb-8.0.orig/gdb/breakpoint.c 2017-08-19 20:04:59.792780566 +0200
+++ gdb-8.0/gdb/breakpoint.c 2017-08-19 20:05:10.063876654 +0200
@@ -2225,9 +2225,9 @@
{
fprintf_unfiltered (gdb_stdlog,
"infrun: stepping past non-steppable watchpoint. "
- "skipping watchpoint at %s:%d\n",
+ "skipping watchpoint at %s:%s\n",
paddress (bl->gdbarch, bl->address),
- bl->length);
+ plongest (bl->length));
}
return 0;
}
@@ -7151,7 +7151,7 @@
static int
breakpoint_address_match_range (struct address_space *aspace1, CORE_ADDR addr1,
- int len1, struct address_space *aspace2,
+ LONGEST len1, struct address_space *aspace2,
CORE_ADDR addr2)
{
return ((gdbarch_has_global_breakpoints (target_gdbarch ())
@@ -11444,7 +11444,7 @@
&& TYPE_CODE (vtype) != TYPE_CODE_ARRAY))
{
CORE_ADDR vaddr = value_address (v);
- int len;
+ LONGEST len;
int num_regs;
len = (target_exact_watchpoints
Index: gdb-8.0/gdb/breakpoint.h
===================================================================
--- gdb-8.0.orig/gdb/breakpoint.h 2017-08-19 20:04:59.793780576 +0200
+++ gdb-8.0/gdb/breakpoint.h 2017-08-19 20:05:10.063876654 +0200
@@ -250,7 +250,7 @@
/* If this is a ranged breakpoint, then this field contains the
length of the range that will be watched for execution. */
- int length;
+ LONGEST length;
/* If the breakpoint lives in memory and reading that memory would
give back the breakpoint, instead of the original contents, then
@@ -422,7 +422,7 @@
/* For hardware watchpoints, the size of the memory region being
watched. For hardware ranged breakpoints, the size of the
breakpoint range. */
- int length;
+ LONGEST length;
/* Type of hardware watchpoint. */
enum target_hw_bp_type watchpoint_type;
Index: gdb-8.0/gdb/c-lang.c
===================================================================
--- gdb-8.0.orig/gdb/c-lang.c 2017-08-19 20:04:59.793780576 +0200
+++ gdb-8.0/gdb/c-lang.c 2017-08-19 20:05:10.064876663 +0200
@@ -186,7 +186,7 @@
void
c_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *user_encoding, int force_ellipses,
const struct value_print_options *options)
{
@@ -672,7 +672,7 @@
}
else
{
- int i;
+ LONGEST i;
/* Write the terminating character. */
for (i = 0; i < TYPE_LENGTH (type); ++i)
@@ -681,7 +681,7 @@
if (satisfy_expected)
{
LONGEST low_bound, high_bound;
- int element_size = TYPE_LENGTH (type);
+ LONGEST element_size = TYPE_LENGTH (type);
if (get_discrete_bounds (TYPE_INDEX_TYPE (expect_type),
&low_bound, &high_bound) < 0)
Index: gdb-8.0/gdb/c-lang.h
===================================================================
--- gdb-8.0.orig/gdb/c-lang.h 2017-08-19 20:04:59.793780576 +0200
+++ gdb-8.0/gdb/c-lang.h 2017-08-19 20:05:10.064876663 +0200
@@ -77,7 +77,7 @@
struct ui_file *);
extern void c_val_print (struct type *,
- int, CORE_ADDR,
+ LONGEST, CORE_ADDR,
struct ui_file *, int,
struct value *,
const struct value_print_options *);
@@ -97,7 +97,7 @@
extern void c_printstr (struct ui_file * stream,
struct type *elttype,
const gdb_byte *string,
- unsigned int length,
+ ULONGEST length,
const char *user_encoding,
int force_ellipses,
const struct value_print_options *options);
Index: gdb-8.0/gdb/c-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/c-valprint.c 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/c-valprint.c 2017-08-19 20:05:10.064876663 +0200
@@ -244,7 +244,7 @@
if (TYPE_LENGTH (type) > 0 && TYPE_LENGTH (unresolved_elttype) > 0)
{
LONGEST low_bound, high_bound;
- int eltlen, len;
+ LONGEST eltlen, len;
struct gdbarch *gdbarch = get_type_arch (type);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
unsigned int i = 0; /* Number of characters printed. */
@@ -318,8 +318,8 @@
if (cp_is_vtbl_ptr_type (elttype))
{
i = 1;
- fprintf_filtered (stream, _("%d vtable entries"),
- len - 1);
+ fprintf_filtered (stream, _("%s vtable entries"),
+ plongest (len - 1));
}
else
{
@@ -396,7 +396,7 @@
-fvtable_thunks. (Otherwise, look under
TYPE_CODE_PTR.) */
struct gdbarch *gdbarch = get_type_arch (type);
- int offset = (embedded_offset
+ LONGEST offset = (embedded_offset
+ TYPE_FIELD_BITPOS (type,
VTBL_FNADDR_OFFSET) / 8);
struct type *field_type = TYPE_FIELD_TYPE (type, VTBL_FNADDR_OFFSET);
@@ -495,7 +495,7 @@
void
c_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options)
Index: gdb-8.0/gdb/cp-abi.c
===================================================================
--- gdb-8.0.orig/gdb/cp-abi.c 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/cp-abi.c 2017-08-19 20:05:10.065876673 +0200
@@ -64,12 +64,12 @@
return (*current_cp_abi.is_operator_name) (name);
}
-int
+LONGEST
baseclass_offset (struct type *type, int index, const gdb_byte *valaddr,
LONGEST embedded_offset, CORE_ADDR address,
const struct value *val)
{
- int res = 0;
+ LONGEST res = 0;
gdb_assert (current_cp_abi.baseclass_offset != NULL);
@@ -96,7 +96,7 @@
struct value *
value_virtual_fn_field (struct value **arg1p,
struct fn_field *f, int j,
- struct type *type, int offset)
+ struct type *type, LONGEST offset)
{
if ((current_cp_abi.virtual_fn_field) == NULL)
return NULL;
Index: gdb-8.0/gdb/cp-abi.h
===================================================================
--- gdb-8.0.orig/gdb/cp-abi.h 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/cp-abi.h 2017-08-19 20:05:10.065876673 +0200
@@ -108,7 +108,7 @@
struct fn_field *f,
int j,
struct type *type,
- int offset);
+ LONGEST offset);
/* Try to find the run-time type of VALUE, using C++ run-time type
@@ -144,11 +144,11 @@
contents of VAL. The result is the offset of the baseclass value
relative to (the address of)(ARG) + OFFSET. */
-extern int baseclass_offset (struct type *type,
- int index, const gdb_byte *valaddr,
- LONGEST embedded_offset,
- CORE_ADDR address,
- const struct value *val);
+extern LONGEST baseclass_offset (struct type *type,
+ int index, const gdb_byte *valaddr,
+ LONGEST embedded_offset,
+ CORE_ADDR address,
+ const struct value *val);
/* Describe the target of a pointer to method. CONTENTS is the byte
pattern representing the pointer to method. TYPE is the pointer to
@@ -226,12 +226,12 @@
struct value *(*virtual_fn_field) (struct value **arg1p,
struct fn_field * f,
int j, struct type * type,
- int offset);
+ LONGEST offset);
struct type *(*rtti_type) (struct value *v, int *full,
LONGEST *top, int *using_enc);
- int (*baseclass_offset) (struct type *type, int index,
- const bfd_byte *valaddr, LONGEST embedded_offset,
- CORE_ADDR address, const struct value *val);
+ LONGEST (*baseclass_offset) (struct type *type, int index,
+ const bfd_byte *valaddr, LONGEST embedded_offset,
+ CORE_ADDR address, const struct value *val);
void (*print_method_ptr) (const gdb_byte *contents,
struct type *type,
struct ui_file *stream);
Index: gdb-8.0/gdb/cp-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/cp-valprint.c 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/cp-valprint.c 2017-08-19 20:05:10.065876673 +0200
@@ -336,7 +336,7 @@
}
else if (i == vptr_fieldno && type == vptr_basetype)
{
- int i_offset = offset + TYPE_FIELD_BITPOS (type, i) / 8;
+ LONGEST i_offset = offset + TYPE_FIELD_BITPOS (type, i) / 8;
struct type *i_type = TYPE_FIELD_TYPE (type, i);
if (valprint_check_validity (stream, i_type, i_offset, val))
Index: gdb-8.0/gdb/d-lang.h
===================================================================
--- gdb-8.0.orig/gdb/d-lang.h 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/d-lang.h 2017-08-19 20:05:10.065876673 +0200
@@ -81,7 +81,7 @@
/* Defined in d-valprint.c */
extern void d_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options);
Index: gdb-8.0/gdb/d-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/d-valprint.c 2017-08-19 20:04:59.794780585 +0200
+++ gdb-8.0/gdb/d-valprint.c 2017-08-19 20:05:10.065876673 +0200
@@ -73,7 +73,7 @@
/* Implements the la_val_print routine for language D. */
void
-d_val_print (struct type *type, int embedded_offset,
+d_val_print (struct type *type, LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options)
Index: gdb-8.0/gdb/dwarf2loc.c
===================================================================
--- gdb-8.0.orig/gdb/dwarf2loc.c 2017-08-19 20:04:59.796780604 +0200
+++ gdb-8.0/gdb/dwarf2loc.c 2017-08-19 20:07:00.692911605 +0200
@@ -1826,7 +1826,7 @@
for (; i < c->n_pieces && offset < max_offset; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
- size_t this_size_bits, this_size;
+ ULONGEST this_size_bits, this_size;
this_size_bits = p->size - bits_to_skip;
if (this_size_bits > max_offset - offset)
@@ -2073,7 +2073,7 @@
static int
check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
- int bit_length)
+ LONGEST bit_length)
{
struct piece_closure *c
= (struct piece_closure *) value_computed_closure (value);
@@ -2086,7 +2086,7 @@
for (i = 0; i < c->n_pieces && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
- size_t this_size_bits = p->size;
+ ULONGEST this_size_bits = p->size;
if (bit_offset > 0)
{
@@ -2194,8 +2194,8 @@
struct type *type;
struct frame_info *frame;
struct dwarf2_locexpr_baton baton;
- int i, bit_length;
- LONGEST bit_offset;
+ int i;
+ LONGEST bit_length, bit_offset;
struct dwarf_expr_piece *piece = NULL;
LONGEST byte_offset;
enum bfd_endian byte_order;
@@ -2212,7 +2212,7 @@
for (i = 0; i < c->n_pieces && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
- size_t this_size_bits = p->size;
+ ULONGEST this_size_bits = p->size;
if (bit_offset > 0)
{
@@ -2503,9 +2503,9 @@
case DWARF_VALUE_STACK:
{
struct value *value = ctx.fetch (0);
- size_t n = TYPE_LENGTH (value_type (value));
- size_t len = TYPE_LENGTH (subobj_type);
- size_t max = TYPE_LENGTH (type);
+ ULONGEST n = TYPE_LENGTH (value_type (value));
+ ULONGEST len = TYPE_LENGTH (subobj_type);
+ ULONGEST max = TYPE_LENGTH (type);
struct gdbarch *objfile_gdbarch = get_objfile_arch (objfile);
struct cleanup *cleanup;
Index: gdb-8.0/gdb/dwarf2read.c
===================================================================
--- gdb-8.0.orig/gdb/dwarf2read.c 2017-08-19 20:04:59.800780641 +0200
+++ gdb-8.0/gdb/dwarf2read.c 2017-08-19 20:05:10.072876738 +0200
@@ -2064,12 +2064,12 @@
}
static void
-dwarf2_const_value_length_mismatch_complaint (const char *arg1, int arg2,
- int arg3)
+dwarf2_const_value_length_mismatch_complaint (const char *arg1, LONGEST arg2,
+ LONGEST arg3)
{
complaint (&symfile_complaints,
- _("const value length mismatch for '%s', got %d, expected %d"),
- arg1, arg2, arg3);
+ _("const value length mismatch for '%s', got %s, expected %s"),
+ arg1, plongest (arg2), plongest (arg3));
}
static void
@@ -12863,8 +12863,8 @@
object, and then subtract off the number of bits of
the field itself. The result is the bit offset of
the LSB of the field. */
- int anonymous_size;
- int bit_offset = DW_UNSND (attr);
+ LONGEST anonymous_size;
+ LONGEST bit_offset = DW_UNSND (attr);
attr = dwarf2_attr (die, DW_AT_byte_size, cu);
if (attr)
Index: gdb-8.0/gdb/eval.c
===================================================================
--- gdb-8.0.orig/gdb/eval.c 2017-08-19 20:04:59.801780651 +0200
+++ gdb-8.0/gdb/eval.c 2017-08-19 20:05:10.073876748 +0200
@@ -297,7 +297,8 @@
while (--nargs >= 0)
{
struct value *val = NULL;
- int bitpos, bitsize;
+ LONGEST bitpos;
+ int bitsize;
bfd_byte *addr;
fieldno++;
@@ -358,7 +359,7 @@
enum noside noside, LONGEST low_bound, LONGEST high_bound)
{
LONGEST index;
- int element_size = TYPE_LENGTH (value_type (element));
+ LONGEST element_size = TYPE_LENGTH (value_type (element));
if (exp->elts[*pos].opcode == BINOP_COMMA)
{
@@ -802,11 +803,11 @@
/* FIXME: Also mixed integral/booleans, with result an integer. */
{
const struct builtin_type *builtin = builtin_type (gdbarch);
- unsigned int promoted_len1 = TYPE_LENGTH (type1);
- unsigned int promoted_len2 = TYPE_LENGTH (type2);
+ ULONGEST promoted_len1 = TYPE_LENGTH (type1);
+ ULONGEST promoted_len2 = TYPE_LENGTH (type2);
int is_unsigned1 = TYPE_UNSIGNED (type1);
int is_unsigned2 = TYPE_UNSIGNED (type2);
- unsigned int result_len;
+ ULONGEST result_len;
int unsigned_operation;
/* Determine type length and signedness after promotion for
@@ -988,7 +989,7 @@
struct value **argvec;
int code;
int ix;
- long mem_offset;
+ LONGEST mem_offset;
struct type **arg_types;
int save_pos1;
struct symbol *function = NULL;
@@ -1167,7 +1168,7 @@
struct type *range_type = TYPE_INDEX_TYPE (type);
struct type *element_type = TYPE_TARGET_TYPE (type);
struct value *array = allocate_value (expect_type);
- int element_size = TYPE_LENGTH (check_typedef (element_type));
+ LONGEST element_size = TYPE_LENGTH (check_typedef (element_type));
LONGEST low_bound, high_bound, index;
if (get_discrete_bounds (range_type, &low_bound, &high_bound) < 0)
Index: gdb-8.0/gdb/f-lang.c
===================================================================
--- gdb-8.0.orig/gdb/f-lang.c 2017-08-19 20:04:59.801780651 +0200
+++ gdb-8.0/gdb/f-lang.c 2017-08-19 20:05:10.073876748 +0200
@@ -103,7 +103,7 @@
static void
f_printstr (struct ui_file *stream, struct type *type, const gdb_byte *string,
- unsigned int length, const char *encoding, int force_ellipses,
+ ULONGEST length, const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
const char *type_encoding = f_get_encoding (type);
Index: gdb-8.0/gdb/f-lang.h
===================================================================
--- gdb-8.0.orig/gdb/f-lang.h 2017-08-19 20:04:59.802780660 +0200
+++ gdb-8.0/gdb/f-lang.h 2017-08-19 20:05:10.073876748 +0200
@@ -30,7 +30,7 @@
extern void f_print_type (struct type *, const char *, struct ui_file *, int,
int, const struct type_print_options *);
-extern void f_val_print (struct type *, int, CORE_ADDR,
+extern void f_val_print (struct type *, LONGEST, CORE_ADDR,
struct ui_file *, int,
struct value *,
const struct value_print_options *);
Index: gdb-8.0/gdb/f-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/f-valprint.c 2017-08-19 20:04:59.802780660 +0200
+++ gdb-8.0/gdb/f-valprint.c 2017-08-19 20:05:10.073876748 +0200
@@ -38,7 +38,7 @@
static void info_common_command (char *, int);
static void f77_get_dynamic_length_of_aggregate (struct type *);
-int f77_array_offset_tbl[MAX_FORTRAN_DIMS + 1][2];
+LONGEST f77_array_offset_tbl[MAX_FORTRAN_DIMS + 1][2];
/* Array which holds offsets to be applied to get a row's elements
for a given array. Array also holds the size of each subarray. */
@@ -73,8 +73,8 @@
static void
f77_get_dynamic_length_of_aggregate (struct type *type)
{
- int upper_bound = -1;
- int lower_bound = 1;
+ LONGEST upper_bound = -1;
+ LONGEST lower_bound = 1;
/* Recursively go all the way down into a possibly multi-dimensional
F77 array and get the bounds. For simple arrays, this is pretty
@@ -106,7 +106,7 @@
static void
f77_print_array_1 (int nss, int ndimensions, struct type *type,
const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
const struct value *val,
const struct value_print_options *options,
@@ -115,7 +115,7 @@
struct type *range_type = TYPE_INDEX_TYPE (check_typedef (type));
CORE_ADDR addr = address + embedded_offset;
LONGEST lowerbound, upperbound;
- int i;
+ LONGEST i;
get_discrete_bounds (range_type, &lowerbound, &upperbound);
@@ -177,7 +177,7 @@
static void
f77_print_array (struct type *type, const gdb_byte *valaddr,
- int embedded_offset,
+ LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream,
int recurse,
const struct value *val,
@@ -216,7 +216,7 @@
function; they are identical. */
void
-f_val_print (struct type *type, int embedded_offset,
+f_val_print (struct type *type, LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options)
Index: gdb-8.0/gdb/findvar.c
===================================================================
--- gdb-8.0.orig/gdb/findvar.c 2017-08-19 20:04:59.802780660 +0200
+++ gdb-8.0/gdb/findvar.c 2017-08-19 20:05:10.074876757 +0200
@@ -817,7 +817,7 @@
default_value_from_register (struct gdbarch *gdbarch, struct type *type,
int regnum, struct frame_id frame_id)
{
- int len = TYPE_LENGTH (type);
+ LONGEST len = TYPE_LENGTH (type);
struct value *value = allocate_value (type);
struct frame_info *frame;
@@ -861,7 +861,7 @@
LONGEST offset = 0;
LONGEST reg_offset = value_offset (value);
int regnum = VALUE_REGNUM (value);
- int len = type_length_units (check_typedef (value_type (value)));
+ LONGEST len = type_length_units (check_typedef (value_type (value)));
gdb_assert (VALUE_LVAL (value) == lval_register);
@@ -876,7 +876,7 @@
while (len > 0)
{
struct value *regval = get_frame_register_value (frame, regnum);
- int reg_len = type_length_units (value_type (regval)) - reg_offset;
+ LONGEST reg_len = type_length_units (value_type (regval)) - reg_offset;
/* If the register length is larger than the number of bytes
remaining to copy, then only copy the appropriate bytes. */
Index: gdb-8.0/gdb/frame.c
===================================================================
--- gdb-8.0.orig/gdb/frame.c 2017-08-19 20:04:59.803780669 +0200
+++ gdb-8.0/gdb/frame.c 2017-08-19 20:05:10.074876757 +0200
@@ -1375,7 +1375,7 @@
int
get_frame_register_bytes (struct frame_info *frame, int regnum,
- CORE_ADDR offset, int len, gdb_byte *myaddr,
+ CORE_ADDR offset, LONGEST len, gdb_byte *myaddr,
int *optimizedp, int *unavailablep)
{
struct gdbarch *gdbarch = get_frame_arch (frame);
@@ -1404,7 +1404,7 @@
}
if (len > maxsize)
error (_("Bad debug information detected: "
- "Attempt to read %d bytes from registers."), len);
+ "Attempt to read %s bytes from registers."), plongest (len));
/* Copy the data. */
while (len > 0)
Index: gdb-8.0/gdb/frame.h
===================================================================
--- gdb-8.0.orig/gdb/frame.h 2017-08-19 20:04:59.803780669 +0200
+++ gdb-8.0/gdb/frame.h 2017-08-19 20:05:10.074876757 +0200
@@ -600,7 +600,7 @@
contents are optimized out or unavailable, set *OPTIMIZEDP,
*UNAVAILABLEP accordingly. */
extern int get_frame_register_bytes (struct frame_info *frame, int regnum,
- CORE_ADDR offset, int len,
+ CORE_ADDR offset, LONGEST len,
gdb_byte *myaddr,
int *optimizedp, int *unavailablep);
Index: gdb-8.0/gdb/gdbtypes.c
===================================================================
--- gdb-8.0.orig/gdb/gdbtypes.c 2017-08-19 20:04:59.804780679 +0200
+++ gdb-8.0/gdb/gdbtypes.c 2017-08-19 20:05:10.075876766 +0200
@@ -2807,7 +2807,7 @@
least as long as OBJFILE. */
struct type *
-init_type (struct objfile *objfile, enum type_code code, int length,
+init_type (struct objfile *objfile, enum type_code code, LONGEST length,
const char *name)
{
struct type *type;
@@ -3116,8 +3116,8 @@
static int
is_unique_ancestor_worker (struct type *base, struct type *dclass,
- int *offset,
- const gdb_byte *valaddr, int embedded_offset,
+ LONGEST *offset,
+ const gdb_byte *valaddr, LONGEST embedded_offset,
CORE_ADDR address, struct value *val)
{
int i, count = 0;
@@ -3128,7 +3128,7 @@
for (i = 0; i < TYPE_N_BASECLASSES (dclass) && count < 2; ++i)
{
struct type *iter;
- int this_offset;
+ LONGEST this_offset;
iter = check_typedef (TYPE_BASECLASS (dclass, i));
@@ -3169,7 +3169,7 @@
int
is_unique_ancestor (struct type *base, struct value *val)
{
- int offset = -1;
+ LONGEST offset = -1;
return is_unique_ancestor_worker (base, value_type (val), &offset,
value_contents_for_printing (val),
@@ -4415,7 +4415,7 @@
break;
}
puts_filtered ("\n");
- printfi_filtered (spaces, "length %d\n", TYPE_LENGTH (type));
+ printfi_filtered (spaces, "length %s\n", pulongest (TYPE_LENGTH (type)));
if (TYPE_OBJFILE_OWNED (type))
{
printfi_filtered (spaces, "objfile ");
@@ -4875,7 +4875,7 @@
struct type *
arch_type (struct gdbarch *gdbarch,
- enum type_code code, int length, const char *name)
+ enum type_code code, LONGEST length, const char *name)
{
struct type *type;
Index: gdb-8.0/gdb/gdbtypes.h
===================================================================
--- gdb-8.0.orig/gdb/gdbtypes.h 2017-08-19 20:04:59.805780688 +0200
+++ gdb-8.0/gdb/gdbtypes.h 2017-08-19 20:05:10.076876776 +0200
@@ -787,7 +787,7 @@
type_length_units function should be used in order to get the length
expressed in target addressable memory units. */
- unsigned int length;
+ ULONGEST length;
/* * Core type, shared by a group of qualified types. */
@@ -1665,7 +1665,7 @@
/* * Helper function to construct objfile-owned types. */
-extern struct type *init_type (struct objfile *, enum type_code, int,
+extern struct type *init_type (struct objfile *, enum type_code, LONGEST,
const char *);
extern struct type *init_integer_type (struct objfile *, int, int,
const char *);
@@ -1682,7 +1682,7 @@
struct type *);
/* Helper functions to construct architecture-owned types. */
-extern struct type *arch_type (struct gdbarch *, enum type_code, int,
+extern struct type *arch_type (struct gdbarch *, enum type_code, LONGEST,
const char *);
extern struct type *arch_integer_type (struct gdbarch *, int, int,
const char *);
Index: gdb-8.0/gdb/gnu-v2-abi.c
===================================================================
--- gdb-8.0.orig/gdb/gnu-v2-abi.c 2017-08-19 20:04:59.805780688 +0200
+++ gdb-8.0/gdb/gnu-v2-abi.c 2017-08-19 20:05:10.076876776 +0200
@@ -82,7 +82,7 @@
TYPE is the type in which F is located. */
static struct value *
gnuv2_virtual_fn_field (struct value **arg1p, struct fn_field * f, int j,
- struct type * type, int offset)
+ struct type *type, LONGEST offset)
{
struct value *arg1 = *arg1p;
struct type *type1 = check_typedef (value_type (arg1));
@@ -338,7 +338,7 @@
target). The result is the offset of the baseclass value relative
to (the address of)(ARG) + OFFSET. */
-static int
+static LONGEST
gnuv2_baseclass_offset (struct type *type, int index,
const bfd_byte *valaddr, LONGEST embedded_offset,
CORE_ADDR address, const struct value *val)
@@ -358,8 +358,7 @@
if (vb_match (type, i, basetype))
{
struct type *field_type;
- LONGEST field_offset;
- int field_length;
+ LONGEST field_offset, field_length;
CORE_ADDR addr;
field_type = check_typedef (TYPE_FIELD_TYPE (type, i));
@@ -383,7 +382,7 @@
/* Don't go through baseclass_offset, as that wraps
exceptions, thus, inner exceptions would be wrapped more
than once. */
- int boffset =
+ LONGEST boffset =
gnuv2_baseclass_offset (type, i, valaddr,
embedded_offset, address, val);
Index: gdb-8.0/gdb/gnu-v3-abi.c
===================================================================
--- gdb-8.0.orig/gdb/gnu-v3-abi.c 2017-08-19 20:04:59.806780698 +0200
+++ gdb-8.0/gdb/gnu-v3-abi.c 2017-08-19 20:05:10.077876785 +0200
@@ -109,7 +109,7 @@
{
struct type *t;
struct field *field_list, *field;
- int offset;
+ LONGEST offset;
struct type *void_ptr_type
= builtin_type (arch)->builtin_data_ptr;
@@ -185,7 +185,7 @@
/* Return the offset from the start of the imaginary `struct
gdb_gnu_v3_abi_vtable' object to the vtable's "address point"
(i.e., where objects' virtual table pointers point). */
-static int
+static LONGEST
vtable_address_point_offset (struct gdbarch *gdbarch)
{
struct type *vtable_type
@@ -408,7 +408,7 @@
static struct value *
gnuv3_virtual_fn_field (struct value **value_p,
struct fn_field *f, int j,
- struct type *vfn_base, int offset)
+ struct type *vfn_base, LONGEST offset)
{
struct type *values_type = check_typedef (value_type (*value_p));
struct gdbarch *gdbarch;
@@ -438,7 +438,7 @@
-1 is returned on error. */
-static int
+static LONGEST
gnuv3_baseclass_offset (struct type *type, int index,
const bfd_byte *valaddr, LONGEST embedded_offset,
CORE_ADDR address, const struct value *val)
@@ -447,7 +447,7 @@
struct type *ptr_type;
struct value *vtable;
struct value *vbase_array;
- long int cur_base_offset, base_offset;
+ LONGEST cur_base_offset, base_offset;
/* Determine architecture. */
gdbarch = get_type_arch (type);
@@ -470,7 +470,7 @@
cur_base_offset = cur_base_offset + vtable_address_point_offset (gdbarch);
if ((- cur_base_offset) % TYPE_LENGTH (ptr_type) != 0)
error (_("Misaligned vbase offset."));
- cur_base_offset = cur_base_offset / ((int) TYPE_LENGTH (ptr_type));
+ cur_base_offset = cur_base_offset / ((LONGEST) TYPE_LENGTH (ptr_type));
vtable = gnuv3_get_vtable (gdbarch, type, address + embedded_offset);
gdb_assert (vtable != NULL);
@@ -514,7 +514,7 @@
we're out of luck. */
for (i = 0; i < TYPE_N_BASECLASSES (domain); i++)
{
- int pos;
+ LONGEST pos;
struct type *basetype;
if (BASETYPE_VIA_VIRTUAL (domain, i))
Index: gdb-8.0/gdb/go-lang.h
===================================================================
--- gdb-8.0.orig/gdb/go-lang.h 2017-08-19 20:04:59.806780698 +0200
+++ gdb-8.0/gdb/go-lang.h 2017-08-19 20:05:10.077876785 +0200
@@ -85,7 +85,7 @@
/* Defined in go-valprint.c. */
extern void go_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options);
Index: gdb-8.0/gdb/go-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/go-valprint.c 2017-08-19 20:04:59.806780698 +0200
+++ gdb-8.0/gdb/go-valprint.c 2017-08-19 20:05:10.077876785 +0200
@@ -86,7 +86,7 @@
/* Implements the la_val_print routine for language Go. */
void
-go_val_print (struct type *type, int embedded_offset,
+go_val_print (struct type *type, LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options)
Index: gdb-8.0/gdb/language.c
===================================================================
--- gdb-8.0.orig/gdb/language.c 2017-08-19 20:04:59.806780698 +0200
+++ gdb-8.0/gdb/language.c 2017-08-19 20:05:10.077876785 +0200
@@ -753,7 +753,7 @@
static void
unk_lang_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
@@ -772,7 +772,7 @@
static void
unk_lang_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options)
Index: gdb-8.0/gdb/language.h
===================================================================
--- gdb-8.0.orig/gdb/language.h 2017-08-19 20:04:59.806780698 +0200
+++ gdb-8.0/gdb/language.h 2017-08-19 20:05:10.077876785 +0200
@@ -197,7 +197,7 @@
struct ui_file * stream);
void (*la_printstr) (struct ui_file * stream, struct type *elttype,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
const struct value_print_options *);
@@ -235,7 +235,7 @@
printing. */
void (*la_val_print) (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options);
Index: gdb-8.0/gdb/m2-lang.c
===================================================================
--- gdb-8.0.orig/gdb/m2-lang.c 2017-08-19 20:04:59.807780707 +0200
+++ gdb-8.0/gdb/m2-lang.c 2017-08-19 20:05:10.078876795 +0200
@@ -104,10 +104,10 @@
static void
m2_printstr (struct ui_file *stream, struct type *type, const gdb_byte *string,
- unsigned int length, const char *encoding, int force_ellipses,
+ ULONGEST length, const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
- unsigned int i;
+ ULONGEST i;
unsigned int things_printed = 0;
int in_quotes = 0;
int need_comma = 0;
@@ -122,9 +122,9 @@
{
/* Position of the character we are examining
to see whether it is repeated. */
- unsigned int rep1;
+ ULONGEST rep1;
/* Number of repetitions we have detected so far. */
- unsigned int reps;
+ ULONGEST reps;
QUIT;
@@ -150,7 +150,7 @@
in_quotes = 0;
}
m2_printchar (string[i], type, stream);
- fprintf_filtered (stream, " <repeats %u times>", reps);
+ fprintf_filtered (stream, " <repeats %s times>", pulongest (reps));
i = rep1 - 1;
things_printed += options->repeat_count_threshold;
need_comma = 1;
Index: gdb-8.0/gdb/m2-lang.h
===================================================================
--- gdb-8.0.orig/gdb/m2-lang.h 2017-08-19 20:04:59.807780707 +0200
+++ gdb-8.0/gdb/m2-lang.h 2017-08-19 20:05:10.078876795 +0200
@@ -34,7 +34,7 @@
extern int m2_is_long_set (struct type *type);
extern int m2_is_unbounded_array (struct type *type);
-extern void m2_val_print (struct type *, int, CORE_ADDR,
+extern void m2_val_print (struct type *, LONGEST, CORE_ADDR,
struct ui_file *, int,
struct value *,
const struct value_print_options *);
Index: gdb-8.0/gdb/m2-typeprint.c
===================================================================
--- gdb-8.0.orig/gdb/m2-typeprint.c 2017-08-19 20:04:59.807780707 +0200
+++ gdb-8.0/gdb/m2-typeprint.c 2017-08-19 20:05:10.078876795 +0200
@@ -234,9 +234,12 @@
m2_print_bounds (TYPE_INDEX_TYPE (type), stream, show, -1, 1);
}
else
- fprintf_filtered (stream, "%d",
- (TYPE_LENGTH (type)
- / TYPE_LENGTH (TYPE_TARGET_TYPE (type))));
+ {
+ ULONGEST val = (TYPE_LENGTH (type)
+ / TYPE_LENGTH (TYPE_TARGET_TYPE (type)));
+
+ fprintf_filtered (stream, "%s", pulongest (val));
+ }
}
fprintf_filtered (stream, "] OF ");
m2_print_type (TYPE_TARGET_TYPE (type), "", stream, show, level, flags);
Index: gdb-8.0/gdb/m2-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/m2-valprint.c 2017-08-19 20:04:59.807780707 +0200
+++ gdb-8.0/gdb/m2-valprint.c 2017-08-19 20:05:10.078876795 +0200
@@ -35,7 +35,7 @@
struct ui_file *stream);
static void
m2_print_array_contents (struct type *type, const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options,
@@ -67,7 +67,7 @@
static void
m2_print_long_set (struct type *type, const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream)
{
int empty_set = 1;
@@ -158,7 +158,7 @@
static void
m2_print_unbounded_array (struct type *type, const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
const struct value_print_options *options)
{
@@ -260,7 +260,7 @@
static void
m2_print_array_contents (struct type *type, const gdb_byte *valaddr,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options,
@@ -308,13 +308,13 @@
function; they are identical. */
void
-m2_val_print (struct type *type, int embedded_offset,
+m2_val_print (struct type *type, LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options)
{
struct gdbarch *gdbarch = get_type_arch (type);
- unsigned len;
+ ULONGEST len;
struct type *elttype;
CORE_ADDR addr;
const gdb_byte *valaddr = value_contents_for_printing (original_value);
@@ -340,7 +340,7 @@
elements up to it. */
if (options->stop_print_at_null)
{
- unsigned int temp_len;
+ ULONGEST temp_len;
/* Look for a NULL char. */
for (temp_len = 0;
@@ -416,7 +416,7 @@
{
struct type *range = elttype;
LONGEST low_bound, high_bound;
- int i;
+ LONGEST i;
int need_comma = 0;
fputs_filtered ("{", stream);
Index: gdb-8.0/gdb/memrange.c
===================================================================
--- gdb-8.0.orig/gdb/memrange.c 2017-08-19 20:04:59.807780707 +0200
+++ gdb-8.0/gdb/memrange.c 2017-08-19 20:05:10.078876795 +0200
@@ -22,8 +22,8 @@
#include <algorithm>
int
-mem_ranges_overlap (CORE_ADDR start1, int len1,
- CORE_ADDR start2, int len2)
+mem_ranges_overlap (CORE_ADDR start1, LONGEST len1,
+ CORE_ADDR start2, LONGEST len2)
{
ULONGEST h, l;
Index: gdb-8.0/gdb/memrange.h
===================================================================
--- gdb-8.0.orig/gdb/memrange.h 2017-08-19 20:04:59.808780716 +0200
+++ gdb-8.0/gdb/memrange.h 2017-08-19 20:05:10.079876804 +0200
@@ -30,7 +30,7 @@
CORE_ADDR start;
/* Length of the range. */
- int length;
+ LONGEST length;
};
typedef struct mem_range mem_range_s;
@@ -40,8 +40,8 @@
/* Returns true if the ranges defined by [start1, start1+len1) and
[start2, start2+len2) overlap. */
-extern int mem_ranges_overlap (CORE_ADDR start1, int len1,
- CORE_ADDR start2, int len2);
+extern int mem_ranges_overlap (CORE_ADDR start1, LONGEST len1,
+ CORE_ADDR start2, LONGEST len2);
/* Returns true if ADDR is in RANGE. */
Index: gdb-8.0/gdb/mips-linux-nat.c
===================================================================
--- gdb-8.0.orig/gdb/mips-linux-nat.c 2017-08-19 20:04:59.808780716 +0200
+++ gdb-8.0/gdb/mips-linux-nat.c 2017-08-19 20:05:10.079876804 +0200
@@ -584,7 +584,7 @@
static int
mips_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
struct pt_watch_regs dummy_regs;
int i;
Index: gdb-8.0/gdb/opencl-lang.c
===================================================================
--- gdb-8.0.orig/gdb/opencl-lang.c 2017-08-19 20:04:59.808780716 +0200
+++ gdb-8.0/gdb/opencl-lang.c 2017-08-19 20:05:10.079876804 +0200
@@ -78,11 +78,11 @@
static struct type *
lookup_opencl_vector_type (struct gdbarch *gdbarch, enum type_code code,
- unsigned int el_length, unsigned int flag_unsigned,
+ ULONGEST el_length, unsigned int flag_unsigned,
int n)
{
int i;
- unsigned int length;
+ ULONGEST length;
struct type *type = NULL;
struct type **types = builtin_opencl_type (gdbarch);
@@ -174,7 +174,7 @@
struct type *eltype = TYPE_TARGET_TYPE (check_typedef (value_type (c->val)));
LONGEST offset = value_offset (v);
LONGEST elsize = TYPE_LENGTH (eltype);
- int n, i, j = 0;
+ LONGEST n, i, j = 0;
LONGEST lowb = 0;
LONGEST highb = 0;
@@ -203,7 +203,7 @@
struct type *eltype = TYPE_TARGET_TYPE (check_typedef (value_type (c->val)));
LONGEST offset = value_offset (v);
LONGEST elsize = TYPE_LENGTH (eltype);
- int n, i, j = 0;
+ LONGEST n, i, j = 0;
LONGEST lowb = 0;
LONGEST highb = 0;
@@ -243,17 +243,17 @@
static int
lval_func_check_synthetic_pointer (const struct value *v,
- LONGEST offset, int length)
+ LONGEST offset, LONGEST length)
{
struct lval_closure *c = (struct lval_closure *) value_computed_closure (v);
/* Size of the target type in bits. */
- int elsize =
+ LONGEST elsize =
TYPE_LENGTH (TYPE_TARGET_TYPE (check_typedef (value_type (c->val)))) * 8;
- int startrest = offset % elsize;
- int start = offset / elsize;
- int endrest = (offset + length) % elsize;
- int end = (offset + length) / elsize;
- int i;
+ LONGEST startrest = offset % elsize;
+ LONGEST start = offset / elsize;
+ LONGEST endrest = (offset + length) % elsize;
+ LONGEST end = (offset + length) / elsize;
+ LONGEST i;
if (endrest)
end++;
@@ -263,8 +263,8 @@
for (i = start; i < end; i++)
{
- int comp_offset = (i == start) ? startrest : 0;
- int comp_length = (i == end) ? endrest : elsize;
+ LONGEST comp_offset = (i == start) ? startrest : 0;
+ LONGEST comp_length = (i == end) ? endrest : elsize;
if (!value_bits_synthetic_pointer (c->val,
c->indices[i] * elsize + comp_offset,
Index: gdb-8.0/gdb/p-lang.c
===================================================================
--- gdb-8.0.orig/gdb/p-lang.c 2017-08-19 20:04:59.808780716 +0200
+++ gdb-8.0/gdb/p-lang.c 2017-08-19 20:05:10.079876804 +0200
@@ -95,8 +95,8 @@
are not multiple of TARGET_CHAR_BIT then the results are wrong
but this does not happen for Free Pascal nor for GPC. */
int
-is_pascal_string_type (struct type *type,int *length_pos,
- int *length_size, int *string_pos,
+is_pascal_string_type (struct type *type, LONGEST *length_pos,
+ LONGEST *length_size, LONGEST *string_pos,
struct type **char_type,
const char **arrayname)
{
@@ -216,12 +216,12 @@
void
pascal_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
const struct value_print_options *options)
{
enum bfd_endian byte_order = gdbarch_byte_order (get_type_arch (type));
- unsigned int i;
+ ULONGEST i;
unsigned int things_printed = 0;
int in_quotes = 0;
int need_comma = 0;
@@ -249,9 +249,9 @@
{
/* Position of the character we are examining
to see whether it is repeated. */
- unsigned int rep1;
+ ULONGEST rep1;
/* Number of repetitions we have detected so far. */
- unsigned int reps;
+ ULONGEST reps;
unsigned long int current_char;
QUIT;
@@ -283,7 +283,7 @@
in_quotes = 0;
}
pascal_printchar (current_char, type, stream);
- fprintf_filtered (stream, " <repeats %u times>", reps);
+ fprintf_filtered (stream, " <repeats %s times>", pulongest (reps));
i = rep1 - 1;
things_printed += options->repeat_count_threshold;
need_comma = 1;
Index: gdb-8.0/gdb/p-lang.h
===================================================================
--- gdb-8.0.orig/gdb/p-lang.h 2017-08-19 20:04:59.809780726 +0200
+++ gdb-8.0/gdb/p-lang.h 2017-08-19 20:05:10.080876813 +0200
@@ -36,7 +36,7 @@
extern void pascal_print_typedef (struct type *, struct symbol *,
struct ui_file *);
-extern void pascal_val_print (struct type *, int,
+extern void pascal_val_print (struct type *, LONGEST,
CORE_ADDR, struct ui_file *, int,
struct value *,
const struct value_print_options *);
@@ -50,13 +50,13 @@
/* These are in p-lang.c: */
extern int
- is_pascal_string_type (struct type *, int *, int *, int *,
+ is_pascal_string_type (struct type *, LONGEST *, LONGEST *, LONGEST *,
struct type **, const char **);
extern void pascal_printchar (int, struct type *, struct ui_file *);
extern void pascal_printstr (struct ui_file *, struct type *, const gdb_byte *,
- unsigned int, const char *, int,
+ ULONGEST, const char *, int,
const struct value_print_options *);
extern struct type **const (pascal_builtin_types[]);
Index: gdb-8.0/gdb/p-valprint.c
===================================================================
--- gdb-8.0.orig/gdb/p-valprint.c 2017-08-19 20:04:59.809780726 +0200
+++ gdb-8.0/gdb/p-valprint.c 2017-08-19 20:05:10.080876813 +0200
@@ -59,7 +59,7 @@
void
pascal_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options)
@@ -70,8 +70,8 @@
unsigned len;
LONGEST low_bound, high_bound;
struct type *elttype;
- unsigned eltlen;
- int length_pos, length_size, string_pos;
+ ULONGEST eltlen;
+ LONGEST length_pos, length_size, string_pos;
struct type *char_type;
CORE_ADDR addr;
int want_space = 0;
Index: gdb-8.0/gdb/ppc-linux-nat.c
===================================================================
--- gdb-8.0.orig/gdb/ppc-linux-nat.c 2017-08-19 20:04:59.809780726 +0200
+++ gdb-8.0/gdb/ppc-linux-nat.c 2017-08-19 20:05:10.080876813 +0200
@@ -1445,7 +1445,7 @@
static int
ppc_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
/* Handle sub-8-byte quantities. */
if (len <= 0)
Index: gdb-8.0/gdb/printcmd.c
===================================================================
--- gdb-8.0.orig/gdb/printcmd.c 2017-08-19 20:04:59.810780735 +0200
+++ gdb-8.0/gdb/printcmd.c 2017-08-19 20:05:10.081876823 +0200
@@ -280,7 +280,7 @@
struct ui_file *stream)
{
struct type *type = check_typedef (value_type (val));
- int len = TYPE_LENGTH (type);
+ LONGEST len = TYPE_LENGTH (type);
if (VALUE_LVAL (val) == lval_memory)
next_address = value_address (val) + len;
@@ -357,7 +357,7 @@
{
struct gdbarch *gdbarch = get_type_arch (type);
LONGEST val_long = 0;
- unsigned int len = TYPE_LENGTH (type);
+ ULONGEST len = TYPE_LENGTH (type);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
/* String printing should go through val_print_scalar_formatted. */
Index: gdb-8.0/gdb/procfs.c
===================================================================
--- gdb-8.0.orig/gdb/procfs.c 2017-08-19 20:04:59.811780744 +0200
+++ gdb-8.0/gdb/procfs.c 2017-08-19 20:05:10.082876832 +0200
@@ -4864,7 +4864,7 @@
static int
procfs_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
/* The man page for proc(4) on Solaris 2.6 and up says that the
system can support "thousands" of hardware watchpoints, but gives
Index: gdb-8.0/gdb/regcache.c
===================================================================
--- gdb-8.0.orig/gdb/regcache.c 2017-08-19 20:04:59.811780744 +0200
+++ gdb-8.0/gdb/regcache.c 2017-08-19 20:05:10.082876832 +0200
@@ -988,7 +988,7 @@
static enum register_status
regcache_xfer_part (struct regcache *regcache, int regnum,
- int offset, int len, void *in, const void *out,
+ LONGEST offset, LONGEST len, void *in, const void *out,
enum register_status (*read) (struct regcache *regcache,
int regnum,
gdb_byte *buf),
@@ -1033,7 +1033,7 @@
enum register_status
regcache_raw_read_part (struct regcache *regcache, int regnum,
- int offset, int len, gdb_byte *buf)
+ int offset, LONGEST len, gdb_byte *buf)
{
struct regcache_descr *descr = regcache->descr;
@@ -1044,7 +1044,7 @@
void
regcache_raw_write_part (struct regcache *regcache, int regnum,
- int offset, int len, const gdb_byte *buf)
+ int offset, LONGEST len, const gdb_byte *buf)
{
struct regcache_descr *descr = regcache->descr;
@@ -1055,7 +1055,7 @@
enum register_status
regcache_cooked_read_part (struct regcache *regcache, int regnum,
- int offset, int len, gdb_byte *buf)
+ LONGEST offset, LONGEST len, gdb_byte *buf)
{
struct regcache_descr *descr = regcache->descr;
@@ -1066,7 +1066,7 @@
void
regcache_cooked_write_part (struct regcache *regcache, int regnum,
- int offset, int len, const gdb_byte *buf)
+ LONGEST offset, LONGEST len, const gdb_byte *buf)
{
struct regcache_descr *descr = regcache->descr;
Index: gdb-8.0/gdb/regcache.h
===================================================================
--- gdb-8.0.orig/gdb/regcache.h 2017-08-19 20:04:59.812780754 +0200
+++ gdb-8.0/gdb/regcache.h 2017-08-19 20:05:10.083876841 +0200
@@ -94,9 +94,9 @@
extern enum register_status
regcache_raw_read_part (struct regcache *regcache, int regnum,
- int offset, int len, gdb_byte *buf);
+ int offset, LONGEST len, gdb_byte *buf);
void regcache_raw_write_part (struct regcache *regcache, int regnum,
- int offset, int len, const gdb_byte *buf);
+ int offset, LONGEST len, const gdb_byte *buf);
void regcache_invalidate (struct regcache *regcache, int regnum);
@@ -133,10 +133,11 @@
write style operations. */
enum register_status regcache_cooked_read_part (struct regcache *regcache,
- int regnum, int offset,
- int len, gdb_byte *buf);
+ int regnum, LONGEST offset,
+ LONGEST len, gdb_byte *buf);
void regcache_cooked_write_part (struct regcache *regcache, int regnum,
- int offset, int len, const gdb_byte *buf);
+ LONGEST offset, LONGEST len,
+ const gdb_byte *buf);
/* Special routines to read/write the PC. */
Index: gdb-8.0/gdb/remote.c
===================================================================
--- gdb-8.0.orig/gdb/remote.c 2017-08-19 20:04:59.814780772 +0200
+++ gdb-8.0/gdb/remote.c 2017-08-19 20:05:10.085876860 +0200
@@ -9915,7 +9915,7 @@
static int
remote_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
if (remote_hw_watchpoint_length_limit == 0)
return 0;
Index: gdb-8.0/gdb/spu-multiarch.c
===================================================================
--- gdb-8.0.orig/gdb/spu-multiarch.c 2017-08-19 20:04:59.814780772 +0200
+++ gdb-8.0/gdb/spu-multiarch.c 2017-08-19 20:05:10.085876860 +0200
@@ -127,7 +127,7 @@
/* Override the to_region_ok_for_hw_watchpoint routine. */
static int
spu_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
struct target_ops *ops_beneath = find_target_beneath (self);
Index: gdb-8.0/gdb/stack.c
===================================================================
--- gdb-8.0.orig/gdb/stack.c 2017-08-19 20:04:59.815780782 +0200
+++ gdb-8.0/gdb/stack.c 2017-08-19 20:05:10.086876869 +0200
@@ -189,7 +189,7 @@
argument (not just the first nameless argument). */
static void
-print_frame_nameless_args (struct frame_info *frame, long start, int num,
+print_frame_nameless_args (struct frame_info *frame, LONGEST start, int num,
int first, struct ui_file *stream)
{
struct gdbarch *gdbarch = get_frame_arch (frame);
@@ -546,7 +546,7 @@
/* Offset of next stack argument beyond the one we have seen that is
at the highest offset, or -1 if we haven't come to a stack
argument yet. */
- long highest_offset = -1;
+ LONGEST highest_offset = -1;
/* Number of ints of arguments that we have printed so far. */
int args_printed = 0;
/* True if we should print arguments, false otherwise. */
@@ -575,8 +575,8 @@
case LOC_ARG:
case LOC_REF_ARG:
{
- long current_offset = SYMBOL_VALUE (sym);
- int arg_size = TYPE_LENGTH (SYMBOL_TYPE (sym));
+ LONGEST current_offset = SYMBOL_VALUE (sym);
+ LONGEST arg_size = TYPE_LENGTH (SYMBOL_TYPE (sym));
/* Compute address of next argument by adding the size of
this argument and rounding to an int boundary. */
@@ -711,7 +711,7 @@
enough about the stack to find them. */
if (num != -1)
{
- long start;
+ LONGEST start;
if (highest_offset == -1)
start = gdbarch_frame_args_skip (get_frame_arch (frame));
Index: gdb-8.0/gdb/symmisc.c
===================================================================
--- gdb-8.0.orig/gdb/symmisc.c 2017-08-19 20:04:59.815780782 +0200
+++ gdb-8.0/gdb/symmisc.c 2017-08-19 20:05:10.086876869 +0200
@@ -604,11 +604,11 @@
case LOC_CONST_BYTES:
{
- unsigned i;
+ ULONGEST i;
struct type *type = check_typedef (SYMBOL_TYPE (symbol));
- fprintf_filtered (outfile, "const %u hex bytes:",
- TYPE_LENGTH (type));
+ fprintf_filtered (outfile, "const %s hex bytes:",
+ pulongest (TYPE_LENGTH (type)));
for (i = 0; i < TYPE_LENGTH (type); i++)
fprintf_filtered (outfile, " %02x",
(unsigned) SYMBOL_VALUE_BYTES (symbol)[i]);
Index: gdb-8.0/gdb/target.c
===================================================================
--- gdb-8.0.orig/gdb/target.c 2017-08-19 20:04:59.816780791 +0200
+++ gdb-8.0/gdb/target.c 2017-08-19 20:05:10.087876879 +0200
@@ -57,7 +57,7 @@
CORE_ADDR, CORE_ADDR, int);
static int default_region_ok_for_hw_watchpoint (struct target_ops *,
- CORE_ADDR, int);
+ CORE_ADDR, LONGEST);
static void default_rcmd (struct target_ops *, const char *, struct ui_file *);
@@ -3228,7 +3228,7 @@
static int
default_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
return (len <= gdbarch_ptr_bit (target_gdbarch ()) / TARGET_CHAR_BIT);
}
Index: gdb-8.0/gdb/target.h
===================================================================
--- gdb-8.0.orig/gdb/target.h 2017-08-19 20:04:59.816780791 +0200
+++ gdb-8.0/gdb/target.h 2017-08-19 20:05:10.088876888 +0200
@@ -555,7 +555,7 @@
/* Documentation of this routine is provided with the corresponding
target_* macro. */
int (*to_region_ok_for_hw_watchpoint) (struct target_ops *,
- CORE_ADDR, int)
+ CORE_ADDR, LONGEST)
TARGET_DEFAULT_FUNC (default_region_ok_for_hw_watchpoint);
int (*to_can_accel_watchpoint_condition) (struct target_ops *,
Index: gdb-8.0/gdb/tracepoint.c
===================================================================
--- gdb-8.0.orig/gdb/tracepoint.c 2017-08-19 20:04:59.817780800 +0200
+++ gdb-8.0/gdb/tracepoint.c 2017-08-19 20:05:10.088876888 +0200
@@ -904,10 +904,10 @@
void
collection_list::add_memrange (struct gdbarch *gdbarch,
int type, bfd_signed_vma base,
- unsigned long len)
+ ULONGEST len)
{
if (info_verbose)
- printf_filtered ("(%d,%s,%ld)\n", type, paddress (gdbarch, base), len);
+ printf_filtered ("(%d,%s,%s)\n", type, paddress (gdbarch, base), pulongest (len));
/* type: memrange_absolute == memory, other n == basereg */
/* base: addr if memory, offset if reg relative. */
@@ -927,7 +927,7 @@
CORE_ADDR scope,
int trace_string)
{
- unsigned long len;
+ ULONGEST len;
unsigned int reg;
bfd_signed_vma offset;
int treat_as_expr = 0;
@@ -948,8 +948,8 @@
offset = SYMBOL_VALUE_ADDRESS (sym);
if (info_verbose)
{
- printf_filtered ("LOC_STATIC %s: collect %ld bytes at %s.\n",
- SYMBOL_PRINT_NAME (sym), len,
+ printf_filtered ("LOC_STATIC %s: collect %s bytes at %s.\n",
+ SYMBOL_PRINT_NAME (sym), pulongest (len),
paddress (gdbarch, offset));
}
/* A struct may be a C++ class with static fields, go to general
@@ -981,9 +981,9 @@
offset = frame_offset + SYMBOL_VALUE (sym);
if (info_verbose)
{
- printf_filtered ("LOC_LOCAL %s: Collect %ld bytes at offset %s"
+ printf_filtered ("LOC_LOCAL %s: Collect %s bytes at offset %s"
" from frame ptr reg %d\n",
- SYMBOL_PRINT_NAME (sym), len,
+ SYMBOL_PRINT_NAME (sym), pulongest (len),
paddress (gdbarch, offset), reg);
}
add_memrange (gdbarch, reg, offset, len);
@@ -993,9 +993,9 @@
offset = 0;
if (info_verbose)
{
- printf_filtered ("LOC_REGPARM_ADDR %s: Collect %ld bytes at offset %s"
+ printf_filtered ("LOC_REGPARM_ADDR %s: Collect %s bytes at offset %s"
" from reg %d\n",
- SYMBOL_PRINT_NAME (sym), len,
+ SYMBOL_PRINT_NAME (sym), pulongest (len),
paddress (gdbarch, offset), reg);
}
add_memrange (gdbarch, reg, offset, len);
@@ -1005,9 +1005,9 @@
offset = frame_offset + SYMBOL_VALUE (sym);
if (info_verbose)
{
- printf_filtered ("LOC_LOCAL %s: Collect %ld bytes at offset %s"
+ printf_filtered ("LOC_LOCAL %s: Collect %s bytes at offset %s"
" from frame ptr reg %d\n",
- SYMBOL_PRINT_NAME (sym), len,
+ SYMBOL_PRINT_NAME (sym), pulongest (len),
paddress (gdbarch, offset), reg);
}
add_memrange (gdbarch, reg, offset, len);
@@ -2585,7 +2585,8 @@
const char *symname;
char *save_args = args;
struct block_iterator iter;
- int j, count = 0;
+ int count = 0;
+ LONGEST j;
struct gdbarch *gdbarch;
int regno;
@@ -2727,8 +2728,11 @@
}
}
if (SYMBOL_TYPE (sym))
- printf_filtered (", length %d.\n",
- TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym))));
+ {
+ ULONGEST len = TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym)));
+
+ printf_filtered (", length %s.\n", pulongest (len));
+ }
}
if (BLOCK_FUNCTION (block))
break;
Index: gdb-8.0/gdb/valarith.c
===================================================================
--- gdb-8.0.orig/gdb/valarith.c 2017-08-19 20:04:59.818780810 +0200
+++ gdb-8.0/gdb/valarith.c 2017-08-19 20:05:10.089876897 +0200
@@ -188,7 +188,7 @@
to doubles, but no longer does. */
struct value *
-value_subscripted_rvalue (struct value *array, LONGEST index, int lowerbound)
+value_subscripted_rvalue (struct value *array, LONGEST index, LONGEST lowerbound)
{
struct type *array_type = check_typedef (value_type (array));
struct type *elt_type = check_typedef (TYPE_TARGET_TYPE (array_type));
@@ -665,7 +665,7 @@
struct value *inval1;
struct value *inval2;
struct value *outval = NULL;
- int inval1len, inval2len;
+ ssize_t inval1len, inval2len;
int count, idx;
char *ptr;
char inchar;
@@ -1518,7 +1518,7 @@
int
value_logical_not (struct value *arg1)
{
- int len;
+ LONGEST len;
const gdb_byte *p;
struct type *type1;
@@ -1549,11 +1549,11 @@
static int
value_strcmp (struct value *arg1, struct value *arg2)
{
- int len1 = TYPE_LENGTH (value_type (arg1));
- int len2 = TYPE_LENGTH (value_type (arg2));
+ LONGEST len1 = TYPE_LENGTH (value_type (arg1));
+ LONGEST len2 = TYPE_LENGTH (value_type (arg2));
const gdb_byte *s1 = value_contents (arg1);
const gdb_byte *s2 = value_contents (arg2);
- int i, len = len1 < len2 ? len1 : len2;
+ LONGEST i, len = len1 < len2 ? len1 : len2;
for (i = 0; i < len; i++)
{
Index: gdb-8.0/gdb/valops.c
===================================================================
--- gdb-8.0.orig/gdb/valops.c 2017-08-19 20:04:59.819780819 +0200
+++ gdb-8.0/gdb/valops.c 2017-08-19 20:05:10.090876907 +0200
@@ -79,7 +79,7 @@
int, int);
static struct value *value_struct_elt_for_reference (struct type *,
- int, struct type *,
+ LONGEST, struct type *,
const char *,
struct type *,
int, enum noside);
@@ -183,7 +183,7 @@
space. */
struct value *
-value_allocate_space_in_inferior (int len)
+value_allocate_space_in_inferior (LONGEST len)
{
struct objfile *objf;
struct value *val = find_function_in_inferior ("malloc", &objf);
@@ -393,12 +393,12 @@
if (code1 == TYPE_CODE_ARRAY)
{
struct type *element_type = TYPE_TARGET_TYPE (type);
- unsigned element_length = TYPE_LENGTH (check_typedef (element_type));
+ ULONGEST element_length = TYPE_LENGTH (check_typedef (element_type));
if (element_length > 0 && TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED (type))
{
struct type *range_type = TYPE_INDEX_TYPE (type);
- int val_length = TYPE_LENGTH (type2);
+ LONGEST val_length = TYPE_LENGTH (type2);
LONGEST low_bound, high_bound, new_length;
if (get_discrete_bounds (range_type, &low_bound, &high_bound) < 0)
@@ -1065,7 +1065,7 @@
{
const gdb_byte *dest_buffer;
CORE_ADDR changed_addr;
- int changed_len;
+ LONGEST changed_len;
gdb_byte buffer[sizeof (LONGEST)];
if (value_bitsize (toval))
@@ -3340,7 +3340,7 @@
the form "DOMAIN::NAME". */
static struct value *
-value_struct_elt_for_reference (struct type *domain, int offset,
+value_struct_elt_for_reference (struct type *domain, LONGEST offset,
struct type *curtype, const char *name,
struct type *intype,
int want_address,
@@ -3374,7 +3374,7 @@
if (want_address)
return value_from_longest
(lookup_memberptr_type (TYPE_FIELD_TYPE (t, i), domain),
- offset + (LONGEST) (TYPE_FIELD_BITPOS (t, i) >> 3));
+ offset + (TYPE_FIELD_BITPOS (t, i) >> 3));
else if (noside != EVAL_NORMAL)
return allocate_value (TYPE_FIELD_TYPE (t, i));
else
@@ -3542,7 +3542,7 @@
for (i = TYPE_N_BASECLASSES (t) - 1; i >= 0; i--)
{
struct value *v;
- int base_offset;
+ LONGEST base_offset;
if (BASETYPE_VIA_VIRTUAL (t, i))
base_offset = 0;
@@ -3691,7 +3691,7 @@
struct value *
value_full_object (struct value *argp,
struct type *rtype,
- int xfull, int xtop,
+ int xfull, LONGEST xtop,
int xusing_enc)
{
struct type *real_type;
Index: gdb-8.0/gdb/valprint.c
===================================================================
--- gdb-8.0.orig/gdb/valprint.c 2017-08-19 20:04:59.820780828 +0200
+++ gdb-8.0/gdb/valprint.c 2017-08-19 20:05:10.090876907 +0200
@@ -933,7 +933,7 @@
void
generic_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options,
@@ -1873,7 +1873,7 @@
void
print_hex_chars (struct ui_file *stream, const gdb_byte *valaddr,
- unsigned len, enum bfd_endian byte_order)
+ ULONGEST len, enum bfd_endian byte_order)
{
const gdb_byte *p;
@@ -1995,17 +1995,17 @@
int recurse,
struct value *val,
const struct value_print_options *options,
- unsigned int i)
+ ULONGEST i)
{
unsigned int things_printed = 0;
- unsigned len;
+ ULONGEST len;
struct type *elttype, *index_type, *base_index_type;
- unsigned eltlen;
+ ULONGEST eltlen;
/* Position of the array element we are examining to see
whether it is repeated. */
- unsigned int rep1;
+ ULONGEST rep1;
/* Number of repetitions we have detected so far. */
- unsigned int reps;
+ ULONGEST reps;
LONGEST low_bound, high_bound;
LONGEST low_pos, high_pos;
@@ -2095,7 +2095,7 @@
address, stream, recurse + 1, val, options,
current_language);
annotate_elt_rep (reps);
- fprintf_filtered (stream, " <repeats %u times>", reps);
+ fprintf_filtered (stream, " <repeats %s times>", pulongest (reps));
annotate_elt_rep_end ();
i = rep1 - 1;
@@ -2747,7 +2747,7 @@
void
generic_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
int quote_char, int c_style_terminator,
const struct value_print_options *options)
Index: gdb-8.0/gdb/valprint.h
===================================================================
--- gdb-8.0.orig/gdb/valprint.h 2017-08-19 20:04:59.820780828 +0200
+++ gdb-8.0/gdb/valprint.h 2017-08-19 20:05:10.090876907 +0200
@@ -119,7 +119,7 @@
CORE_ADDR, struct ui_file *, int,
struct value *,
const struct value_print_options *,
- unsigned int);
+ ULONGEST);
extern void val_print_type_code_int (struct type *, const gdb_byte *,
struct ui_file *);
@@ -141,7 +141,7 @@
unsigned int, enum bfd_endian);
extern void print_hex_chars (struct ui_file *, const gdb_byte *,
- unsigned int, enum bfd_endian);
+ ULONGEST, enum bfd_endian);
extern void print_char_chars (struct ui_file *, struct type *,
const gdb_byte *, unsigned int, enum bfd_endian);
@@ -194,7 +194,7 @@
extern void generic_val_print (struct type *type,
- int embedded_offset, CORE_ADDR address,
+ LONGEST embedded_offset, CORE_ADDR address,
struct ui_file *stream, int recurse,
struct value *original_value,
const struct value_print_options *options,
@@ -204,7 +204,7 @@
int quoter, const char *encoding);
extern void generic_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *encoding, int force_ellipses,
int quote_char, int c_style_terminator,
const struct value_print_options *options);
Index: gdb-8.0/gdb/value.c
===================================================================
--- gdb-8.0.orig/gdb/value.c 2017-08-19 20:04:59.821780838 +0200
+++ gdb-8.0/gdb/value.c 2017-08-19 20:05:10.091876916 +0200
@@ -367,7 +367,8 @@
}
int
-value_bits_any_optimized_out (const struct value *value, int bit_offset, int bit_length)
+value_bits_any_optimized_out (const struct value *value, LONGEST bit_offset,
+ LONGEST bit_length)
{
gdb_assert (!value->lazy);
@@ -813,9 +814,9 @@
Return true if the available bits match. */
static int
-value_contents_bits_eq (const struct value *val1, int offset1,
- const struct value *val2, int offset2,
- int length)
+value_contents_bits_eq (const struct value *val1, LONGEST offset1,
+ const struct value *val2, LONGEST offset2,
+ LONGEST length)
{
/* Each array element corresponds to a ranges source (unavailable,
optimized out). '1' is for VAL1, '2' for VAL2. */
@@ -1455,7 +1456,8 @@
the following LENGTH bytes. */
void
-mark_value_bytes_optimized_out (struct value *value, int offset, int length)
+mark_value_bytes_optimized_out (struct value *value, LONGEST offset,
+ LONGEST length)
{
mark_value_bits_optimized_out (value,
offset * TARGET_CHAR_BIT,
Index: gdb-8.0/gdb/value.h
===================================================================
--- gdb-8.0.orig/gdb/value.h 2017-08-19 20:04:59.822780847 +0200
+++ gdb-8.0/gdb/value.h 2017-08-19 20:05:10.092876925 +0200
@@ -246,7 +246,7 @@
/* If non-NULL, this is used to determine whether the indicated bits
of VALUE are a synthetic pointer. */
int (*check_synthetic_pointer) (const struct value *value,
- LONGEST offset, int length);
+ LONGEST offset, LONGEST length);
/* Return a duplicate of VALUE's closure, for use in a new value.
This may simply return the same closure, if VALUE's is
@@ -377,7 +377,8 @@
otherwise. */
extern int value_bits_any_optimized_out (const struct value *value,
- int bit_offset, int bit_length);
+ LONGEST bit_offset,
+ LONGEST bit_length);
/* Like value_optimized_out, but return true iff the whole value is
optimized out. */
@@ -387,7 +388,7 @@
LENGTH bytes as optimized out. */
extern void mark_value_bytes_optimized_out (struct value *value,
- int offset, int length);
+ LONGEST offset, LONGEST length);
/* Mark VALUE's content bits starting at OFFSET and extending for
LENGTH bits as optimized out. */
@@ -819,12 +820,11 @@
int fieldno,
struct type *arg_type);
-
extern struct type *value_rtti_indirect_type (struct value *, int *, LONGEST *,
int *);
extern struct value *value_full_object (struct value *, struct type *, int,
- int, int);
+ LONGEST, int);
extern struct value *value_cast_pointers (struct type *, struct value *, int);
@@ -1113,10 +1113,11 @@
extern struct value *find_function_in_inferior (const char *,
struct objfile **);
-extern struct value *value_allocate_space_in_inferior (int);
+extern struct value *value_allocate_space_in_inferior (LONGEST);
extern struct value *value_subscripted_rvalue (struct value *array,
- LONGEST index, int lowerbound);
+ LONGEST index,
+ LONGEST lowerbound);
/* User function handler. */
Index: gdb-8.0/gdb/s390-linux-nat.c
===================================================================
--- gdb-8.0.orig/gdb/s390-linux-nat.c 2017-08-19 20:04:59.822780847 +0200
+++ gdb-8.0/gdb/s390-linux-nat.c 2017-08-19 20:05:10.092876925 +0200
@@ -900,7 +900,7 @@
static int
s390_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int cnt)
+ CORE_ADDR addr, LONGEST cnt)
{
return 1;
}
Index: gdb-8.0/gdb/target-delegates.c
===================================================================
--- gdb-8.0.orig/gdb/target-delegates.c 2017-08-19 20:04:59.823780856 +0200
+++ gdb-8.0/gdb/target-delegates.c 2017-08-19 20:05:10.093876935 +0200
@@ -760,14 +760,14 @@
}
static int
-delegate_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2)
+delegate_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, LONGEST arg2)
{
self = self->beneath;
return self->to_region_ok_for_hw_watchpoint (self, arg1, arg2);
}
static int
-debug_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, int arg2)
+debug_region_ok_for_hw_watchpoint (struct target_ops *self, CORE_ADDR arg1, LONGEST arg2)
{
int result;
fprintf_unfiltered (gdb_stdlog, "-> %s->to_region_ok_for_hw_watchpoint (...)\n", debug_target.to_shortname);
@@ -777,7 +777,7 @@
fputs_unfiltered (", ", gdb_stdlog);
target_debug_print_CORE_ADDR (arg1);
fputs_unfiltered (", ", gdb_stdlog);
- target_debug_print_int (arg2);
+ target_debug_print_LONGEST (arg2);
fputs_unfiltered (") = ", gdb_stdlog);
target_debug_print_int (result);
fputs_unfiltered ("\n", gdb_stdlog);
Index: gdb-8.0/gdb/aarch64-linux-nat.c
===================================================================
--- gdb-8.0.orig/gdb/aarch64-linux-nat.c 2017-08-19 20:04:59.823780856 +0200
+++ gdb-8.0/gdb/aarch64-linux-nat.c 2017-08-19 20:05:10.093876935 +0200
@@ -708,7 +708,7 @@
static int
aarch64_linux_region_ok_for_hw_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
return aarch64_linux_region_ok_for_watchpoint (addr, len);
}
Index: gdb-8.0/gdb/nat/x86-dregs.c
===================================================================
--- gdb-8.0.orig/gdb/nat/x86-dregs.c 2017-08-19 20:04:59.823780856 +0200
+++ gdb-8.0/gdb/nat/x86-dregs.c 2017-08-19 20:05:10.093876935 +0200
@@ -384,7 +384,7 @@
static int
x86_handle_nonaligned_watchpoint (struct x86_debug_reg_state *state,
- x86_wp_op_t what, CORE_ADDR addr, int len,
+ x86_wp_op_t what, CORE_ADDR addr, LONGEST len,
enum target_hw_bp_type type)
{
int retval = 0;
@@ -552,7 +552,7 @@
int
x86_dr_region_ok_for_watchpoint (struct x86_debug_reg_state *state,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
int nregs;
Index: gdb-8.0/gdb/compile/compile-c-support.c
===================================================================
--- gdb-8.0.orig/gdb/compile/compile-c-support.c 2017-08-19 20:04:59.824780866 +0200
+++ gdb-8.0/gdb/compile/compile-c-support.c 2017-08-19 20:05:10.093876935 +0200
@@ -309,11 +309,11 @@
default:
fprintf_unfiltered (stream,
- " unsigned char %s[%d]"
+ " unsigned char %s[%s]"
" __attribute__((__aligned__("
"__BIGGEST_ALIGNMENT__)))",
regname,
- TYPE_LENGTH (regtype));
+ pulongest (TYPE_LENGTH (regtype)));
}
fputs_unfiltered (";\n", stream);
Index: gdb-8.0/gdb/nat/x86-dregs.h
===================================================================
--- gdb-8.0.orig/gdb/nat/x86-dregs.h 2017-08-19 20:04:59.824780866 +0200
+++ gdb-8.0/gdb/nat/x86-dregs.h 2017-08-19 20:05:10.094876944 +0200
@@ -116,7 +116,7 @@
/* Return non-zero if we can watch a memory region that starts at
address ADDR and whose length is LEN bytes. */
extern int x86_dr_region_ok_for_watchpoint (struct x86_debug_reg_state *state,
- CORE_ADDR addr, int len);
+ CORE_ADDR addr, LONGEST len);
/* If the inferior has some break/watchpoint that triggered, set the
address associated with that break/watchpoint and return true.
Index: gdb-8.0/gdb/x86-nat.c
===================================================================
--- gdb-8.0.orig/gdb/x86-nat.c 2017-08-19 20:04:59.824780866 +0200
+++ gdb-8.0/gdb/x86-nat.c 2017-08-19 20:05:10.094876944 +0200
@@ -174,7 +174,7 @@
static int
x86_region_ok_for_watchpoint (struct target_ops *self,
- CORE_ADDR addr, int len)
+ CORE_ADDR addr, LONGEST len)
{
struct x86_debug_reg_state *state
= x86_debug_reg_state (ptid_get_pid (inferior_ptid));
Index: gdb-8.0/gdb/rust-lang.c
===================================================================
--- gdb-8.0.orig/gdb/rust-lang.c 2017-08-19 20:04:59.824780866 +0200
+++ gdb-8.0/gdb/rust-lang.c 2017-08-19 20:05:10.094876944 +0200
@@ -439,7 +439,7 @@
static void
rust_printstr (struct ui_file *stream, struct type *type,
- const gdb_byte *string, unsigned int length,
+ const gdb_byte *string, ULONGEST length,
const char *user_encoding, int force_ellipses,
const struct value_print_options *options)
{
@@ -563,7 +563,7 @@
/* la_val_print implementation for Rust. */
static void
-rust_val_print (struct type *type, int embedded_offset,
+rust_val_print (struct type *type, LONGEST embedded_offset,
CORE_ADDR address, struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options)
Index: gdb-8.0/gdb/arch-utils.c
===================================================================
--- gdb-8.0.orig/gdb/arch-utils.c 2017-08-19 20:04:59.825780875 +0200
+++ gdb-8.0/gdb/arch-utils.c 2017-08-19 20:05:10.095876953 +0200
@@ -247,7 +247,7 @@
const struct floatformat **
default_floatformat_for_type (struct gdbarch *gdbarch,
- const char *name, int len)
+ const char *name, LONGEST len)
{
const struct floatformat **format = NULL;
Index: gdb-8.0/gdb/arch-utils.h
===================================================================
--- gdb-8.0.orig/gdb/arch-utils.h 2017-08-19 20:04:59.825780875 +0200
+++ gdb-8.0/gdb/arch-utils.h 2017-08-19 20:05:10.095876953 +0200
@@ -144,7 +144,7 @@
/* Default implementation of gdbarch_floatformat_for_type. */
extern const struct floatformat **
default_floatformat_for_type (struct gdbarch *gdbarch,
- const char *name, int len);
+ const char *name, LONGEST len);
extern CORE_ADDR generic_skip_trampoline_code (struct frame_info *frame,
CORE_ADDR pc);
Index: gdb-8.0/gdb/findcmd.c
===================================================================
--- gdb-8.0.orig/gdb/findcmd.c 2017-08-19 20:04:59.825780875 +0200
+++ gdb-8.0/gdb/findcmd.c 2017-08-19 20:05:10.095876953 +0200
@@ -180,7 +180,7 @@
need to grow the pattern buf. */
pattern_buf_size_need = (pattern_buf_end - pattern_buf
+ std::max (TYPE_LENGTH (t),
- (unsigned) sizeof (int64_t)));
+ (ULONGEST) sizeof (int64_t)));
if (pattern_buf_size_need > pattern_buf_size)
{
size_t current_offset = pattern_buf_end - pattern_buf;
Index: gdb-8.0/gdb/gdbarch.c
===================================================================
--- gdb-8.0.orig/gdb/gdbarch.c 2017-08-19 20:04:59.826780885 +0200
+++ gdb-8.0/gdb/gdbarch.c 2017-08-19 20:05:10.096876963 +0200
@@ -1806,7 +1806,7 @@
}
const struct floatformat **
-gdbarch_floatformat_for_type (struct gdbarch *gdbarch, const char *name, int length)
+gdbarch_floatformat_for_type (struct gdbarch *gdbarch, const char *name, LONGEST length)
{
gdb_assert (gdbarch != NULL);
gdb_assert (gdbarch->floatformat_for_type != NULL);
Index: gdb-8.0/gdb/gdbarch.h
===================================================================
--- gdb-8.0.orig/gdb/gdbarch.h 2017-08-19 20:04:59.826780885 +0200
+++ gdb-8.0/gdb/gdbarch.h 2017-08-19 20:05:10.096876963 +0200
@@ -203,8 +203,8 @@
NAME, if non-NULL, is the type name, which may be used to distinguish
different target formats of the same length. */
-typedef const struct floatformat ** (gdbarch_floatformat_for_type_ftype) (struct gdbarch *gdbarch, const char *name, int length);
-extern const struct floatformat ** gdbarch_floatformat_for_type (struct gdbarch *gdbarch, const char *name, int length);
+typedef const struct floatformat ** (gdbarch_floatformat_for_type_ftype) (struct gdbarch *gdbarch, const char *name, LONGEST length);
+extern const struct floatformat ** gdbarch_floatformat_for_type (struct gdbarch *gdbarch, const char *name, LONGEST length);
extern void set_gdbarch_floatformat_for_type (struct gdbarch *gdbarch, gdbarch_floatformat_for_type_ftype *floatformat_for_type);
/* For most targets, a pointer on the target and its representation as an
Index: gdb-8.0/gdb/gdbarch.sh
===================================================================
--- gdb-8.0.orig/gdb/gdbarch.sh 2017-08-19 20:04:59.827780894 +0200
+++ gdb-8.0/gdb/gdbarch.sh 2017-08-19 20:05:10.097876972 +0200
@@ -392,7 +392,7 @@
# Returns the floating-point format to be used for values of length LENGTH.
# NAME, if non-NULL, is the type name, which may be used to distinguish
# different target formats of the same length.
-m:const struct floatformat **:floatformat_for_type:const char *name, int length:name, length:0:default_floatformat_for_type::0
+m:const struct floatformat **:floatformat_for_type:const char *name, LONGEST length:name, length:0:default_floatformat_for_type::0
# For most targets, a pointer on the target and its representation as an
# address in GDB have the same size and "look the same". For such a
Index: gdb-8.0/gdb/i386-tdep.c
===================================================================
--- gdb-8.0.orig/gdb/i386-tdep.c 2017-08-19 20:04:59.828780903 +0200
+++ gdb-8.0/gdb/i386-tdep.c 2017-08-19 20:05:10.098876982 +0200
@@ -8180,7 +8180,7 @@
const struct floatformat **
i386_floatformat_for_type (struct gdbarch *gdbarch,
- const char *name, int len)
+ const char *name, LONGEST len)
{
if (len == 128 && name)
if (strcmp (name, "__float128") == 0
Index: gdb-8.0/gdb/ppc-linux-tdep.c
===================================================================
--- gdb-8.0.orig/gdb/ppc-linux-tdep.c 2017-08-19 20:04:59.829780913 +0200
+++ gdb-8.0/gdb/ppc-linux-tdep.c 2017-08-19 20:05:10.098876982 +0200
@@ -1632,7 +1632,7 @@
const struct floatformat **
ppc_floatformat_for_type (struct gdbarch *gdbarch,
- const char *name, int len)
+ const char *name, LONGEST len)
{
if (len == 128 && name)
if (strcmp (name, "__float128") == 0
Index: gdb-8.0/gdb/tracepoint.h
===================================================================
--- gdb-8.0.orig/gdb/tracepoint.h 2017-08-19 20:04:59.829780913 +0200
+++ gdb-8.0/gdb/tracepoint.h 2017-08-19 20:05:10.099876991 +0200
@@ -254,7 +254,7 @@
void add_register (unsigned int regno);
void add_memrange (struct gdbarch *gdbarch,
int type, bfd_signed_vma base,
- unsigned long len);
+ ULONGEST len);
void collect_symbol (struct symbol *sym,
struct gdbarch *gdbarch,
long frame_regno, long frame_offset,