binutils-gdb modified for the FreeChainXenon project
Find a file
Yao Qi 2ac09a5bbb [AArch64] Use int64_t for address offset
In AArch64 displaced stepping and fast tracepoint, GDB/GDBserver needs
to check whether the offset can fit in the range.  We are using int32_t
for offset, it is sufficient to get an offset from an instruction, but
it is not enough to get an offset from two addresses.  For example,
we have a BL in shared lib which is at 0x0000002000040774, and the
scratch pad for displaced stepping is at 0x400698.  The offset can't
fit in 28 bit imm.  However, since we are using int32_t for offset, GDB
thinks the offset can fit it, and generate the B instruction with wrong
offset.

It fixes the following fail,

-FAIL: gdb.base/dso2dso.exp: next over call to sub2

gdb:

2016-06-28  Yao Qi  <yao.qi@linaro.org>

	* aarch64-tdep.c (aarch64_displaced_step_b): Use int64_t for
	variable new_offset.

gdb/gdbserver:

2016-06-28  Yao Qi  <yao.qi@linaro.org>

	* linux-aarch64-low.c (aarch64_ftrace_insn_reloc_b): Use int64_t
	for variable new_offset.
	(aarch64_ftrace_insn_reloc_b_cond): Likewise.
	(aarch64_ftrace_insn_reloc_cb): Likewise.
	(aarch64_ftrace_insn_reloc_tb): Likewise.
	(aarch64_install_fast_tracepoint_jump_pad): Likewise.  Use
	PRIx64 instead of PRIx32.
2016-06-28 17:24:25 +01:00
bfd Fix typo in previous commit 2016-06-28 17:04:30 +01:00
binutils Relax previous restriction on running binutils ar tests for Alpha targets, allowing the tests to be run for ELF variants. 2016-06-28 14:05:34 +01:00
config Sync top level files with gcc. 2016-02-10 10:54:29 +00:00
cpu Correct fr30 comment 2016-03-03 12:55:30 +10:30
elfcpp Add support for MIPS .rld_map section. 2016-06-20 12:16:26 -07:00
etc Fix compile time warning messages building with gcc v6.1.1 2016-06-13 10:49:26 +01:00
gas Use supports_gnu_unique' with the unique_symbol' and `type' tests 2016-06-28 13:54:00 +01:00
gdb [AArch64] Use int64_t for address offset 2016-06-28 17:24:25 +01:00
gold Don't convert R_SPARC_32 to R_SPARC_RELATIVE if class is ELFCLASS64. 2016-06-28 12:00:56 +01:00
gprof Regenerate configure 2016-05-09 17:24:30 +09:30
include [AArch64] Make register indices be full 64-bit values 2016-06-28 09:21:04 +01:00
intl Regen intl/configure 2015-08-31 12:53:36 +09:30
ld Skip version check for unreferenced and undefined symbol 2016-06-28 08:08:30 -07:00
libdecnumber Remove leading/trailing white spaces in ChangeLog 2015-07-24 04:16:47 -07:00
libiberty Don't needlessly clear xmemdup allocated memory. 2016-05-31 20:34:47 +09:30
opcodes [AArch64] Make register indices be full 64-bit values 2016-06-28 09:21:04 +01:00
readline Revert "Sync readline/ to version 7.0 alpha" 2015-07-25 15:57:00 -04:00
sim Add support for FMLA (by element) to AArch64 sim. 2016-05-06 10:35:33 +01:00
texinfo
zlib Regenerate configure 2016-05-09 17:24:30 +09:30
.cvsignore
.gitattributes Add a .gitattributes file for use with git-merge-changelog 2014-07-25 18:07:23 -04:00
.gitignore Import changes made to files shared with the FSF GCC project. 2016-01-11 11:06:56 +00:00
ChangeLog Add dependencies to configure rule 2016-05-28 22:36:04 +09:30
compile Update from upstream Automake 2014-11-16 13:43:48 +01:00
config-ml.in Sync toplevel files with GCC 2015-07-27 07:49:05 -07:00
config.guess Fix typo introduced during the most recent synchronization update. 2016-05-27 14:34:06 +01:00
config.rpath
config.sub Sync config.guess and config.sub with FSF GCC mainline versions 2016-05-23 11:42:17 +01:00
configure Add mips and s390 build targets for gold. 2016-03-17 15:37:10 -07:00
configure.ac Add mips and s390 build targets for gold. 2016-03-17 15:37:10 -07:00
COPYING
COPYING.LIB
COPYING.LIBGLOSS
COPYING.NEWLIB
COPYING3
COPYING3.LIB
depcomp Update from upstream Automake 2014-11-16 13:43:48 +01:00
djunpack.bat
install-sh Update from upstream Automake 2014-11-16 13:43:48 +01:00
libtool.m4 Sync top-level btool.m4 with GCC 2016-01-12 08:44:52 -08:00
ltgcc.m4
ltmain.sh
ltoptions.m4
ltsugar.m4
ltversion.m4
lt~obsolete.m4
MAINTAINERS Update description of ownership of files in include/ 2014-11-04 16:14:14 -08:00
Makefile.def Sync top-level Makefile.def with GCC 2016-01-12 08:34:40 -08:00
Makefile.in Add dependencies to configure rule 2016-05-28 22:36:04 +09:30
Makefile.tpl Add dependencies to configure rule 2016-05-28 22:36:04 +09:30
makefile.vms
missing Update from upstream Automake 2014-11-16 13:43:48 +01:00
mkdep
mkinstalldirs Update from upstream Automake 2014-11-16 13:43:48 +01:00
move-if-change Update `move-if-change' from gnulib 2014-11-16 17:04:02 +01:00
README
README-maintainer-mode
setup.com
src-release.sh fix gdb version parsing in src-release.sh 2016-01-17 10:01:55 +04:00
symlink-tree
ylwrap Update from upstream Automake 2014-11-16 13:43:48 +01:00

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.

If you are receiving this as part of a GDB release, see the file gdb/README.
If with a binutils release, see binutils/README;  if with a libg++ release,
see libg++/README, etc.  That'll give you info about this
package -- supported targets, how to use it, how to report bugs, etc.

It is now possible to automatically configure and build a variety of
tools with one command.  To build all of the tools contained herein,
run the ``configure'' script here, e.g.:

	./configure 
	make

To install them (by default in /usr/local/bin, /usr/local/lib, etc),
then do:
	make install

(If the configure script can't determine your type of computer, give it
the name as an argument, for instance ``./configure sun4''.  You can
use the script ``config.sub'' to test whether a name is recognized; if
it is, config.sub translates it to a triplet specifying CPU, vendor,
and OS.)

If you have more than one compiler on your system, it is often best to
explicitly set CC in the environment before running configure, and to
also set CC when running make.  For example (assuming sh/bash/ksh):

	CC=gcc ./configure
	make

A similar example using csh:

	setenv CC gcc
	./configure
	make

Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.