+2016-06-28  Yao Qi  <yao.qi@linaro.org>
+
+       * aarch64-tdep.c (aarch64_displaced_step_b): Use int64_t for
+       variable new_offset.
+
 2016-06-27  Manish Goregaokar  <manish@mozilla.com>
 
        * rust-lang.c (rust_print_type, rust_decorations): Print unit
 
 {
   struct aarch64_displaced_step_data *dsd
     = (struct aarch64_displaced_step_data *) data;
-  int32_t new_offset = data->insn_addr - dsd->new_addr + offset;
+  int64_t new_offset = data->insn_addr - dsd->new_addr + offset;
 
   if (can_encode_int32 (new_offset, 28))
     {
 
+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  Yao Qi  <yao.qi@linaro.org>
 
        * linux-arm-low.c (arm_get_syscall_trapinfo): New function.
 
 {
   struct aarch64_insn_relocation_data *insn_reloc
     = (struct aarch64_insn_relocation_data *) data;
-  int32_t new_offset
+  int64_t new_offset
     = insn_reloc->base.insn_addr - insn_reloc->new_addr + offset;
 
   if (can_encode_int32 (new_offset, 28))
 {
   struct aarch64_insn_relocation_data *insn_reloc
     = (struct aarch64_insn_relocation_data *) data;
-  int32_t new_offset
+  int64_t new_offset
     = insn_reloc->base.insn_addr - insn_reloc->new_addr + offset;
 
   if (can_encode_int32 (new_offset, 21))
 {
   struct aarch64_insn_relocation_data *insn_reloc
     = (struct aarch64_insn_relocation_data *) data;
-  int32_t new_offset
+  int64_t new_offset
     = insn_reloc->base.insn_addr - insn_reloc->new_addr + offset;
 
   if (can_encode_int32 (new_offset, 21))
 {
   struct aarch64_insn_relocation_data *insn_reloc
     = (struct aarch64_insn_relocation_data *) data;
-  int32_t new_offset
+  int64_t new_offset
     = insn_reloc->base.insn_addr - insn_reloc->new_addr + offset;
 
   if (can_encode_int32 (new_offset, 16))
 {
   uint32_t buf[256];
   uint32_t *p = buf;
-  int32_t offset;
+  int64_t offset;
   int i;
   uint32_t insn;
   CORE_ADDR buildaddr = *jump_entry;
     {
       sprintf (err,
               "E.Jump back from jump pad too far from tracepoint "
-              "(offset 0x%" PRIx32 " cannot be encoded in 28 bits).",
+              "(offset 0x%" PRIx64 " cannot be encoded in 28 bits).",
               offset);
       return 1;
     }
     {
       sprintf (err,
               "E.Jump pad too far from tracepoint "
-              "(offset 0x%" PRIx32 " cannot be encoded in 28 bits).",
+              "(offset 0x%" PRIx64 " cannot be encoded in 28 bits).",
               offset);
       return 1;
     }