• R/O
  • HTTP
  • SSH
  • HTTPS

List of commits

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

GNU Binutils with patches for OS216


users/hjl/mpx/master
RSS
Rev. Tiempo Autor
97122a4 users/hjl/mpx/master 2013-11-21 21:53:05 H.J. Lu

Add bnd-branch-1 test

* ld-x86-64/mpx.exp: Run bnd-branch-1.
* ld-x86-64/bnd-branch-1.d: New file.
* ld-x86-64/bnd-branch-1.s: Likewise.

265a525 2013-11-21 20:04:36 Tristan Gingold

Fix version.dll binutils test on non native platforms

2013-11-21 Tristan Gingold <gingold@adacore.com>

* binutils-all/dlltool.exp: Add dlltool_gas_flag to version.dll test.

c78feb3 2013-11-21 12:41:55 Yao Qi

Doc 'dynamic' for command -var-list-children

Hi,
I find "dynamic=1" appear in the result of each child of the output of
-var-list-children,

-var-list-children ss1
^done,numchild="2",children=[child={name="ss1.a",exp="a",numchild="0",type="struct s",thread-id="1",dynamic="1"},child={name="ss1.b",exp="b",numchild="0",type="struct s",thread-id="1",dynamic="1"}],has_more="0"

but the doc doesn't mention this. This patch is to copy the description
of "dynamic=1" here.

gdb/doc:

2013-11-21 Yao Qi <yao@codesourcery.com>

* gdb.texinfo (GDB/MI Variable Objects): Add attribute 'dynamic'
for the output of command -var-list-children.

27b81af 2013-11-21 11:33:39 Yao Qi

s/see @pxref/@pxref in doc

Looks "see" is unnecessary before @pxref.

gdb/doc:

2013-11-21 Yao Qi <yao@codesourcery.com>

* gdb.texinfo (Caching Target Data): Remove "see" before
@pxref.

ebcf782 2013-11-21 10:32:33 Doug Evans

* linux-low.c (linux_set_resume_request): Fix comment.

20ad937 2013-11-21 09:31:48 Doug Evans

* linux-low.c (resume_status_pending_p): Tweak comment.

76fbd46 2013-11-21 08:00:14 Alan Modra

daily update

9a23101 2013-11-21 05:35:10 H.J. Lu

Add mpx1static, mpx2 and mpx2static tests

* ld-x86-64/mpx.exp (build_tests): Add libmpx2a.a, libmpx2b.a
and libmpx2c.a.
(run_tests): Add mpx1static, mpx2 and mpx2static.
* ld-x86-64/mpx2.out: Likewise.
* ld-x86-64/mpx2a.c: Likewise.
* ld-x86-64/mpx2a.rd: Likewise.
* ld-x86-64/mpx2b.c: Likewise.
* ld-x86-64/mpx2c.c: Likewise.
* ld-x86-64/mpx2c.rd: Likewise.

069d6a0 2013-11-21 02:23:39 Pedro Alves

Add missing ChangeLog entry.

2013-11-20 Pedro Alves <palves@redhat.com>

* gdb.base/maint.exp (maint print objfiles): Consume one line at a
time, and run it through all three milestone regexes.

7c245c2 2013-11-21 02:20:11 Joel Brobecker

get rid of py-value.c:is_intlike (use is_integral_type instead)

is_intlike was mostly duplicating is_integral_type, with the exception
of the handling of TYPE_CODE_PTR when parameter PTR_OK is nonzero.
This patches deletes the is_intlike function, using is_integral_type
instead, and adjusting the two locations where this function gets
called.

The code should remain strictly equivalent.

gdb/ChangeLog:

* python/py-value.c (is_intlike): Delete.
(valpy_int): Replace use of CHECK_TYPEDEF and is_intlike
by use of is_integral_type.
(valpy_long): Replace use of CHECK_TYPEDEF and is_intlike
by use of is_integral_type and check for TYPE_CODE_PTR.

e48744a 2013-11-21 02:12:37 Pedro Alves

Make the maint.exp:'maint print objfiles' test less fragile.

I was "lucky" enough that an unrelated patch changed how many symtabs
GDB expands in a plain run to main, and that triggered a latent issue
in this test:

PASS: gdb.base/maint.exp: maint print objfiles: header
PASS: gdb.base/maint.exp: maint print objfiles: psymtabs
FAIL: gdb.base/maint.exp: maint print objfiles: symtabs

The problem is in my case, expect is managing to alway put in the
buffer chunks like this:


Psymtabs:
../../../src/gdb/testsuite/gdb.base/break1.c at 0x1ed2280, ../../../src/gdb/testsuite/gdb.base/break.c at 0x1ed21d0,

Symtabs:
../../../src/gdb/testsuite/gdb.base/break.c at 0x1f044f0, /usr/include/stdio.h at 0x1ed25a0, /usr/include/libio.h at 0x1ed2510, /usr/include/bits/types.h at 0x1ed2480, /usr/lib/gcc/x86_64-redhat-linux/4.7.2/include/stddef.h at 0x1ed23f0,


Object file /usr/lib/debug/lib64/ld-2.15.so.debug: Objfile at 0x1f4bff0, bfd at 0x1f2d940, 0 minsyms

Psymtabs:
bsearch.c at 0x1f65340, ../sysdeps/x86_64/multiarch/init-arch.c at
0x1f65290, ...

Note: Psymtabs:/Symtabs:/Psymtabs:.

So, the loop matches the first Psymtabs in the buffer. Then we're
left with


../../../src/gdb/testsuite/gdb.base/break1.c at 0x1ed2280, ../../../src/gdb/testsuite/gdb.base/break.c at 0x1ed21d0,

Symtabs:
../../../src/gdb/testsuite/gdb.base/break.c at 0x1f044f0, /usr/include/stdio.h at 0x1ed25a0, /usr/include/libio.h at 0x1ed2510, /usr/include/bits/types.h at 0x1ed2480, /usr/lib/gcc/x86_64-redhat-linux/4.7.2/include/stddef.h at 0x1ed23f0,


Object file /usr/lib/debug/lib64/ld-2.15.so.debug: Objfile at 0x1f4bff0, bfd at 0x1f2d940, 0 minsyms

Psymtabs:
bsearch.c at 0x1f65340, ../sysdeps/x86_64/multiarch/init-arch.c at
0x1f65290, ...

In the next iteration, because the psymtabs regex comes first, we
match with the Psymtabs: line, then of course, end up with just

bsearch.c at 0x1f65340, ../sysdeps/x86_64/multiarch/init-arch.c at
0x1f65290, ...

in the buffer. The "Symtabs:" line is lost. expect then reads more
gdb output, and manages to again retrieve the same pattern. Rinse,
repeat, and the test never matches any "Symtab:" line.

We don't know the order the matches lines will appear, so the fix is
to consume one line at a time, and run it through all three milestone
regexes.

gdb/testsuite/
2013-11-20 Pedro Alves <palves@redhat.com>

* gdb.base/maint.exp (maint print objfiles): Consume one line at a
time, and run it through all three milestone regexes.

925bbbb 2013-11-21 01:51:21 Nick Clifton

* scripttempl/elf32msp430.sc (.data): Set the based on the next
free location in the text memory region, not a computation based
upon the size of the text section. Orphaned sections or other
linker scripts might insert new sections between the .text section
and the .data section.
* scripttempl/elf32msp430_3.sc (.data): Likewise.

8986e35 2013-11-21 00:49:40 Tom Tromey

remove strerror module

This fixes the mingw build breakage reported by Pierre.

I found that the gnulib strerror module somehow requires us to pull in
the gethostname module. However, pulling in the gethostname module
makes many things break.

I've sent a bug report to gnulib.

Meanwhile, removing the strerror module should not harm gdb and fixes
the build.

I'm checking this in.

2013-11-20 Tom Tromey <tromey@redhat.com>

* gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
strerror module.
* gnulib/aclocal.m4: Update.
* gnulib/config.in: Update.
* gnulib/configure: Update.
* gnulib/import/Makefile.am: Update.
* gnulib/import/Makefile.in: Update.
* gnulib/import/errno.in.h: Remove.
* gnulib/import/intprops.h: Remove.
* gnulib/import/m4/errno_h.m4: Remove.
* gnulib/import/m4/gnulib-cache.m4: Update.
* gnulib/import/m4/gnulib-comp.m4: Update.
* gnulib/import/m4/strerror.m4: Remove.
* gnulib/import/m4/sys_socket_h.m4: Remove.
* gnulib/import/strerror-override.c: Remove.
* gnulib/import/strerror-override.h: Remove.
* gnulib/import/strerror.c: Remove.
* gnulib/update-gnulib.sh: Update.

10d8cbd 2013-11-20 22:50:14 Sanimir Agovic

test: test eval routines with EVAL_AVOID_SIDE_EFFECTS flag set

Ensure that certain commands (e.g. whatis/ptype) and sizeof intrinsic
have no side effects (variables cannot be altered).

2013-11-20 Sanimir Agovic <sanimir.agovic@intel.com>

testsuite/
* gdb.base/eval-avoid-side-effects.exp: New test.

6b1141e 2013-11-20 22:15:57 Yao Qi

set_address_space_data if dcache is NULL.

gdb:

2013-11-20 Yao Qi <yao@codesourcery.com>

* target-dcache.c (target_dcache_get_or_init): Call
set_address_space_data if 'dcache' is NULL.

60650f2 2013-11-20 22:42:53 Walfred Tedeschi

Add MPX registers tests.

2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>

* common/i386-gcc-cpuid.h (bit_MPX): Synchronize with gcc file.
testsuite/
* gdb.arch/i386-mpx.c: New file
* gdb.arch/i386-mpx.exp: New file.

Change-Id: Ica4c9ee823c8210ca876e31f27dcd8583b660a9f
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>

0974896 2013-11-20 22:42:53 Walfred Tedeschi

Add pretty-printer for MPX bnd registers.

Boundary length is simpler implemented by means of a pretty
printer. This simplifies users life when examining a bound register.

Changelog:
2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>

* python/lib/gdb/command/bound_register.py: New file.
* gdb/data-directory/Makefile.in: copy bond_register.py to the right path to
be initialized at gdb startup.
testsuite/
* gdb.python/py-pp-maint.exp: Consider new pretty-print added for registers.

Change-Id: Id4f39845e5ece56c370a1fd4343648909f08b731
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>

Conflicts:

gdb/ChangeLog

a196ebe 2013-11-20 22:42:52 Walfred Tedeschi

Add MPX support to gdbserver.

2013-05-22 Walfred Tedeschi <walfred.tedeschi@intel.com>

gdbserver/
* Makefile.in: Add i386-mpx.c, i386-mpx-linux.c, amd64-mpx.c,
amd64-mpx-linux.c, x32-mpx.c and x32-mpx-linux.c generation.

* configure.srv (srv_i386_regobj): Add i386-mpx.o.
(srv_i386_linux_regobj): Add i386-mpx-linux.o.
(srv_amd64_regobj): Add amd64-mpx.o.
(srv_amd64_linux_regobj): Add amd64-mpx-linux.o.
(srv_i386_32bit_xmlfiles): Add i386/32bit-mpx.xml.
(srv_i386_64bit_xmlfiles): Add i386/64bit-mpx.xml.

* i387-fp.c (num_pl_bnd_register) Added constant.
(num_pl_bnd_cfg_registers) Added constant.
(struct i387_xsave) Added reserved area and MPX fields.
(i387_cache_to_xsave, i387_xsave_to_cache) Add MPX.

* linux-x86-low.c (init_registers_i386_mpx_linux): Declare new
function.
(tdesc_i386_mpx_linux): Add MPX amd64 target.
(init_registers_amd64_mpx_linux): Declare new function.
(tdesc_amd64_mpx_linux): Add MPX amd64 target.
(x86_64_regmap): Add MPX registers.
(x86_linux_read_description): Add MPX case.
(initialize_low_arch): Initialize MPX targets.

Change-Id: I394d81afa76d11375ce792cefad0ceb9825fb379
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>

e43e105 2013-11-20 22:42:51 Walfred Tedeschi

MPX for amd64

2013-06-24 Walfred Tedeschi <walfred.tedeschi@intel.com>

* amd64-linux-nat.c (amd64_linux_gregset32_reg_offset):
Add MPX registers.
(amd64_linux_read_description): Add initialization for MPX and
AVX independently.
* amd64-linux-tdep.c: Includes features/i386/amd64-mpx-linux.c.
(amd64_linux_gregset_reg_offset): Add MPX registers.
(amd64_linux_core_read_description): Add initialization for MPX
registers.
(_initialize_amd64_linux_tdep): Initialize MPX targets.
* amd64-linux-tdep.h (AMD64_LINUX_RAX_REGNUM): Set it to the last
register on the list.
(tdesc_amd64_mpx_linux) Add new target for MPX.
* amd64-tdep.c: Includes features/i386/amd64-mpx.c.
(amd64_mpx_names): MPX register names.
(amd64_init_abi): Add MPX register while initializing the ABI.
(_initialize_amd64_tdep): Initialize MPX targets.
* amd64-tdep.h (amd64_regnum): Add MPX registers.
(AMD64_NUM_REGS): Set number of registers taking MPX into account.

Change-Id: I4a785c181e2fb45e4086650b2f87426caeb2f800
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>

Conflicts:

gdb/ChangeLog

1dbcd68 2013-11-20 22:42:50 Walfred Tedeschi

Add MPX support for i386

2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>

* i386-linux-nat.c (GETXSTATEREGS_SUPPLIES): Add MPX
registers on the range of registers to be read from
xsave buffer.
(i386_linux_read_description): Add case for MPX.
* i386-linux-tdep.c: Include features/i386/i386-mpx-linux.c.
(i386_linux_gregset_reg_offset): Add MPX registers.
(i386_linux_core_read_description): Initialize also MPX.
(_initialize_i386_linux_tdep): Add mpx initialization.
* i386-tdep.h (gdbarch_tdep): Add fields bnd0r_regnum, bnd0_regnum,
mpx_register_names.
(i386_regnum): Add MPX registers.
(I386_MPX_NUM_REGS): New macro.
(i386_bnd_regnum_p): New function.
* i386-linux-tdep.h (I386_LINUX_NUM_REGS): Set
number of registers to be the number of BNDSTATUS.
(tdesc_i386_mpx_linux): Add description for MPX Linux registers.
* i386-tdep.c: Include features/i386/i386-mpx.c.
(i386_mpx_names): Add MPX register names array.
(i386_bnd_names): Add bnd pseudo register names array.
(i386_bndr_regnum_p): Lookup register numbers for bnd raw
registers.
(i386_bndr_regnum_p): Lookup register numbers for bnd raw registers.
(386_mpx_ctrl_regnum_p): Lookup register numbers for MPX control
registers.
(i386_bnd_type): New function.
(i386_pseudo_register_type): Use i386_bnd_type for bnd pseudo
register types.
(i386_pseudo_register_read_into_value): Add bnd case.
(i386_pseudo_register_write): Add bnd pseudo registers.
(i386_register_reggroup_p): Add MPX register to the group all.
(i386_validate_tdesc_p): Add MPX to the target description
validation.
(i386_pseudo_register_name): Add bnd pseudo registers.
(i386_gdbarch_init): Add MPX for architecture initialization.
(_initia_initialize_i386_tdep): Add mpx initialization.
* i387-tdep.c (xsave_mpx_offset): New vector for MPX offsets on
XSAVE buffer.
(XSAVE_MPX_ADDR): New macro.
(i387_supply_xsave): Add MPX case.
(i387_collect_xsave): Add MPX case.
* i387-tdep.h (I387_BND0R_REGNUM): New macro.
(I387_BNDCFGU_REGNUM): New macro.
(I387_NUM_MPX_REGS): New macro.
(I387_NUM_BND_REGS): New macro.
(I387_NUM_MPX_CTRL_REGS): New macro.
(I387_MPXEND_REGNUM): New macro.
* common/i386-xstate.h (I386_XSTATE_BNDREGS): New macro.
(I386_XSTATE_BNDCFG): Likewise.
(I386_XSTATE_MPX_MASK): Likewise.
(I386_XSTATE_ALL_MASK): New macro represents flags for all states.
(I386_XSTATE_BNDREGS_SIZE): New macro.
(I386_XSTATE_BNDCFG_SIZE): Likewise.
(I386_XSTATE_SIZE): Adapt for MPX.
(I386_XSTATE_MAX_SIZE): Likewise.

Change-Id: I9ddb7d49434d86fa18eb6b99515203d7c567aefd
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>

Conflicts:

gdb/ChangeLog

ccc4204 2013-11-20 22:42:50 Walfred Tedeschi

Add MPX registers XML files.

2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>

* features/i386/Makefile: Adapts for using MPX registers.
* features/i386/32bit-mpx.xml: New file.
* features/i386/64bit-mpx.xml: Likewise.
* features/i386/amd64-mpx-linux.c: Likewise.
* features/i386/amd64-mpx-linux.xml: Likewise.
* features/i386/amd64-mpx.c: Likewise.
* features/i386/amd64-mpx.xml: Likewise.
* features/i386/i386-mpx-linux.c: Likewise.
* features/i386/i386-mpx-linux.xml: Likewise.
* features/i386/i386-mpx.c: Likewise.
* features/i386/i386-mpx.xml: Likewise.
* regformats/i386/amd64-mpx-linux.dat: New file.
* regformats/i386/amd64-mpx.dat: Likewise.
* regformats/i386/i386-mpx-linux.dat: Likewise.
* regformats/i386/i386-mpx.dat: Likewise.

57803a3 2013-11-20 22:42:49 Walfred Tedeschi

Fix conditions in creating a bitfield.

Bitfields are represented by intervals [start, begin]. It means that for an
interval comprised by only one bit start and end will be equal.
The present condition does not always hold. On the other hand in target-description.c
(tdesc_gdb_type) bitfield is created when "f->type" is null. The routine
maint_print_maint_print_c_tdesc_cmd is modified to follow the same strategy.

2013-11-20 Walfred Tedeschi <walfred.tedeschi@intel.com>

* target-descriptions.c (maint_print_maint_print_c_tdesc_cmd):
Modified logic of creating a bitfield to be in sync with
tdesc_gdb_type.

testsuite/
* gdb.xml/maint_print_struct.xml (bitfield): Added bitfield having
start and end equal 0.

Change-Id: I8c62db049995f0c0c30606d9696b86afe237cbb9

87b8eed 2013-11-20 20:22:53 Yufeng Zhang

gas/testsuite/

* gas/aarch64/msr.s: Add tests.
* gas/aarch64/msr.d: Update.

include/opcode

* aarch64.h (aarch64_pstatefields): Change element type to
aarch64_sys_reg.

opcodes/

* aarch64-opc.c (aarch64_pstatefields): Update.

9a73e52 2013-11-20 20:22:53 Yufeng Zhang

Revert "Do not issue error messages when parsing a PSTATE register".

This reverts commit 03e621be975dacc9cec9f5782698bdb098f6a49c.

2b59118 2013-11-20 19:50:32 Will Newton

gdb/arm-tdep.c: Remove "Infinite loop detected" error message.

Since as far back as the beginning of the sourceware repository
the ARM port has printed an error "Infinite loop detected" when
the next_pc calculated is the same as the current one, for example
when encountering a branch to the current PC address.

This causes the test gdb.base/random-signal.exp as the error message
is not expected. I have not been able to find a good reason for the
message to be here so remove it and let the test pass.

gdb/ChangeLog:

2013-11-20 Will Newton <will.newton@linaro.org>

* arm-tdep.c (arm_get_next_pc): Remove "Infinite loop detected"
error message.

b26dfc9 2013-11-20 13:41:26 Yao Qi

Associate target_dcache to address_space.

Hi,
Nowadays, 'target_dcache' is a global variable in GDB, which is not
necessary. It can be a per-address-space variable. In this patch, we
associate target_dcache to address_space.

gdb/doc:

2013-11-20 Yao Qi <yao@codesourcery.com>

* gdb.texinfo (Caching Target Data): Update doc for
per-address-space dcache.

gdb:

2013-11-20 Yao Qi <yao@codesourcery.com>

* progspace.h (struct address_space_data): Declare.
* target-dcache.c: Include "progspace.h".
(target_dache): Remove.
(target_dcache_aspace_key): New.
(target_dcache_cleanup): New function.
(target_dcache_init_p): Get data through
target_dcache_aspace_key.
(target_dcache_invalidate): Likewise.
(target_dcache_get): Likewise.
(target_dcache_get_or_init): Likewise.
(_initialize_target_dcache): Initialize
target_dcache_aspace_key.

3a8356f 2013-11-20 13:41:25 Yao Qi

Add REGISTRY for struct address_space.

This patch adds REGISTRY for struct address_space.

gdb:

2013-11-20 Yao Qi <yao@codesourcery.com>

* progspace.c (struct address_space): Update comments.
<REGISTRY_FIELDS>: New fields.
DEFINE_REGISTRY for address_space.
(new_address_space): Call address_space_alloc_data.
(free_address_space): Call address_space_free_data.
* progspace.h: Use DECLARE_REGISTRY.

b12039c 2013-11-20 12:40:55 Yao Qi

Don't stress 'remote' in "Data Caching" in doc

When I try to describe the cache and its related commands (in a
cache-per-address-space world), I find hard to add, because
existing doc is focused on remote debugging, while data cache is used
regardless of the target. More precisely, GDB cache target data,
instead of remote data.

gdb/doc:

2013-11-20 Yao Qi <yao@codesourcery.com>

* gdb.texinfo (Data): Rename menu item.
(Caching Remote Data): Rename to ...
(Caching Target Data): ... it. Update.

68c765e 2013-11-20 12:40:51 Yao Qi

Move target-dcache out of target.c

This patch moves target_dcache related code out of target.c.

gdb:

2013-11-20 Yao Qi <yao@codesourcery.com>

* Makefile.in (SFILES):Add target-dcache.c.
(HFILES_NO_SRCDIR): Add target-dcache.h.
(COMMON_OBS): Add target-dcache.o.
* dcache.c: Remove inclusion to "target.h". Include
"target-dcache.h".
* memattr.c: Include "target-dcache.h".
* top.c: Likewise.
* tracepoint.c: Likewise.
* target.c: (stack_cache_enabled_p_1): Move to
target-dcache.c.
(stack_cache_enabled_p): Likewise.
(set_stack_cache_enabled_p): Likewise.
(show_stack_cache_enabled_p): Likewise.
(target_dcache, target_dcache_init_p): Likewise.
(target_dcache_invalidate): Likewise.
(target_dcache_get, target_dcache_get_or_init): Likewise.
(memory_xfer_partial_1): Call function stack_cache_enabled.
(initialize_target): Move code to target-dcache.c.
* target.h (target_dcache_invalidate): Move to
target-dcache.h.
(target_dcache_get): Likewise.
* target-dcache.c: New.
* target-dcache.h: New.

f2de978 2013-11-20 12:40:48 Yao Qi

Don't update target_dcache if it is not initialized

After previous patch, 'target_dcache' is initialized lazily. It is
possible that 'target_dcache' is still NULL when GDB writes to memory.
In this case, update to 'target_dcache' can be skipped.

gdb:

2013-11-20 Yao Qi <yao@codesourcery.com>

* target.c (memory_xfer_partial_1): Update 'target_dcache' if
it is initialized.