Home | History | Annotate | Download | only in MBlaze
      1 //===- MBlazeRelocations.h - MBlaze Code Relocations ------------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 //
     10 // This file defines the MBlaze target-specific relocation types.
     11 //
     12 //===----------------------------------------------------------------------===//
     13 
     14 #ifndef MBLAZERELOCATIONS_H
     15 #define MBLAZERELOCATIONS_H
     16 
     17 #include "llvm/CodeGen/MachineRelocation.h"
     18 
     19 namespace llvm {
     20   namespace MBlaze {
     21     enum RelocationType {
     22       /// reloc_pcrel_word - PC relative relocation, add the relocated value to
     23       /// the value already in memory, after we adjust it for where the PC is.
     24       reloc_pcrel_word = 0,
     25 
     26       /// reloc_picrel_word - PIC base relative relocation, add the relocated
     27       /// value to the value already in memory, after we adjust it for where the
     28       /// PIC base is.
     29       reloc_picrel_word = 1,
     30 
     31       /// reloc_absolute_word - absolute relocation, just add the relocated
     32       /// value to the value already in memory.
     33       reloc_absolute_word = 2,
     34 
     35       /// reloc_absolute_word_sext - absolute relocation, just add the relocated
     36       /// value to the value already in memory. In object files, it represents a
     37       /// value which must be sign-extended when resolving the relocation.
     38       reloc_absolute_word_sext = 3,
     39 
     40       /// reloc_absolute_dword - absolute relocation, just add the relocated
     41       /// value to the value already in memory.
     42       reloc_absolute_dword = 4
     43     };
     44   }
     45 }
     46 
     47 #endif
     48