reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
// Check generation of N32 ABI relocations.

// RUN: llvm-mc -filetype=obj -triple=mips64-linux-gnu -mcpu=mips3 \
// RUN:         -target-abi=n32  %s -o - | llvm-readobj -r | FileCheck %s
// RUN: llvm-mc -filetype=obj -triple=mips64-linux-gnuabin32 -mcpu=mips3 \
// RUN:          %s -o - | llvm-readobj -r | FileCheck %s
// RUN: llvm-mc -filetype=obj -triple=mipsn32 -mcpu=mips3 \
// RUN:          %s -o - | llvm-readobj -r | FileCheck %s

// CHECK:      Relocations [
// CHECK-NEXT:   Section (3) .rela.text {
// CHECK-NEXT:     0x0 R_MIPS_GPREL16 foo 0x4
// CHECK-NEXT:     0x0 R_MIPS_SUB - 0x0
// CHECK-NEXT:     0x0 R_MIPS_HI16 - 0x0
// CHECK-NEXT:     0x4 R_MIPS_GPREL16 foo 0x4
// CHECK-NEXT:     0x4 R_MIPS_SUB - 0x0
// CHECK-NEXT:     0x4 R_MIPS_LO16 - 0x0
// CHECK-NEXT:   }

  .globl  foo
  .ent  foo
foo:
  lui   $gp, %hi(%neg(%gp_rel(foo+4)))
  addiu $gp, $gp, %lo(%neg(%gp_rel(foo+4)))
  daddu $gp, $gp, $25
  .end  foo