Skip to content
  1. Jun 28, 2012
    • Bill Wendling's avatar
      Move lib/Analysis/DebugInfo.cpp to lib/VMCore/DebugInfo.cpp and · e38859dc
      Bill Wendling authored
      include/llvm/Analysis/DebugInfo.h to include/llvm/DebugInfo.h.
      
      The reasoning is because the DebugInfo module is simply an interface to the
      debug info MDNodes and has nothing to do with analysis.
      
      llvm-svn: 159312
      e38859dc
    • Chandler Carruth's avatar
      Remove the last vestiges of the '-lit' and '-dg' test runner split by · fd3a5e33
      Chandler Carruth authored
      removing '-lit' qualifiers from make rules. I've left a legacy
      'check-local-lit' rule in case build scripts have this encoded
      somewhere.
      
      llvm-svn: 159311
      fd3a5e33
    • Chandler Carruth's avatar
      Remove 'check-dg', a wrapper around 'check-local-dg' which was just · c00bdab5
      Chandler Carruth authored
      nuked.
      
      Add a comment that the 'check-lit' rule is really just a legacy of
      having two test runners.
      
      llvm-svn: 159310
      c00bdab5
    • Chandler Carruth's avatar
      Remove autoconf support for runtest and tclsh, some of the last vestigal · 9c394e3f
      Chandler Carruth authored
      bits of DejaGNU.
      
      Eric, you may want to remove the TCLSH bits from aclocal.m4 and
      regenerate... I didn't want to touch the m4 file lest something
      exploded.
      
      llvm-svn: 159308
      9c394e3f
    • Chandler Carruth's avatar
      Rip out legacy DejaGNU support from our Makefiles. This hasn't been the · 256d3a9e
      Chandler Carruth authored
      default in forever, and hasn't even worked since most of the .exp files
      were removed.
      
      llvm-svn: 159307
      256d3a9e
    • Chandler Carruth's avatar
      LLVM-GCC is dead. Really. I promise. ;] · b5c1a2b8
      Chandler Carruth authored
      More importantly, these files don't even have the variable that these
      lines purport to substite.
      
      llvm-svn: 159304
      b5c1a2b8
    • Jack Carter's avatar
      This allows hello world to be compiled for Mips 64 direct object. · ef40238a
      Jack Carter authored
      It takes advantage of r159299 which introduces relocation support for N64. 
      elf-dump needed to be upgraded to support N64 relocations as well.
      
      This passes make check.
      
      Jack
      
      llvm-svn: 159302
      ef40238a
    • Jack Carter's avatar
      This allows hello world to be compiled for Mips 64 direct object. · b9f9de93
      Jack Carter authored
      It takes advantage of r159299 which introduces relocation support for N64. 
      elf-dump needed to be upgraded to support N64 relocations as well.
      
      This passes make check.
      
      Jack
      
      llvm-svn: 159301
      b9f9de93
    • Chad Rosier's avatar
      Whitespace. · 51afe639
      Chad Rosier authored
      llvm-svn: 159300
      51afe639
    • Jack Carter's avatar
      The ELF relocation record format is different for N64 · 8ad0c272
      Jack Carter authored
      which many Mips 64 ABIs use than for O64 which many 
      if not all other target ABIs use.
      
      Most architectures have the following 64 bit relocation record format:
      
        typedef struct
        {
          Elf64_Addr   r_offset; /* Address of reference */
          Elf64_Xword  r_info;   /* Symbol index and type of relocation */
        } Elf64_Rel;
      
        typedef struct
        {
          Elf64_Addr    r_offset;
          Elf64_Xword   r_info;
          Elf64_Sxword  r_addend;
        } Elf64_Rela;
      
      Whereas N64 has the following format:
      
        typedef struct
        {
          Elf64_Addr    r_offset;/* Address of reference */
          Elf64_Word  r_sym;     /* Symbol index */
          Elf64_Byte  r_ssym;    /* Special symbol */
          Elf64_Byte  r_type3;   /* Relocation type */
          Elf64_Byte  r_type2;   /* Relocation type */
          Elf64_Byte  r_type;    /* Relocation type */
        } Elf64_Rel;
      
        typedef struct
        {
          Elf64_Addr    r_offset;/* Address of reference */
          Elf64_Word  r_sym;     /* Symbol index */
          Elf64_Byte  r_ssym;    /* Special symbol */
          Elf64_Byte  r_type3;   /* Relocation type */
          Elf64_Byte  r_type2;   /* Relocation type */
          Elf64_Byte  r_type;    /* Relocation type */
          Elf64_Sxword  r_addend;
        } Elf64_Rela;
      
      The structure is the same size, but the r_info data element 
      is now 5 separate elements. Besides the content aspects, 
      endian byte reordering will be different for the area with 
      each element being endianized separately.
      
      I treat this as generic and continue to pass r_type as 
      an integer masking and unmasking the byte sized N64 
      values for N64 mode. I've implemented this and it causes no 
      affect on other current targets.
      
      This passes make check.
      
      Jack
      
      llvm-svn: 159299
      8ad0c272
  2. Jun 27, 2012
  3. Jun 26, 2012
    • Benjamin Kramer's avatar
      Implement getHostCPUName for ARM/linux. This will be used to implement -march=native in clang. · efe40286
      Benjamin Kramer authored
      The cpuid registers are only available in privileged mode so we don't have
      an OS-independent way of implementing this. ARM doesn't provide a list of
      processor IDs so the list is somewhat incomplete.
      
      llvm-svn: 159228
      efe40286
    • Rafael Espindola's avatar
      Fix llc's -print-before=pass and -print-after=pass. · e0eaa043
      Rafael Espindola authored
      llvm-svn: 159227
      e0eaa043
    • Manman Ren's avatar
      X86: add GATHER intrinsics (AVX2) in LLVM · a0982041
      Manman Ren authored
      Support the following intrinsics:
      llvm.x86.avx2.gather.d.pd, llvm.x86.avx2.gather.q.pd
      llvm.x86.avx2.gather.d.pd.256, llvm.x86.avx2.gather.q.pd.256
      llvm.x86.avx2.gather.d.ps, llvm.x86.avx2.gather.q.ps
      llvm.x86.avx2.gather.d.ps.256, llvm.x86.avx2.gather.q.ps.256
      
      Modified Disassembler to handle VSIB addressing mode.
      
      llvm-svn: 159221
      a0982041
    • Tim Northover's avatar
      Teach TableGen to put chains on more instructions · e5629966
      Tim Northover authored
      When generating selection tables for Pat instances, TableGen relied on
      an output Instruction's Pattern field being set to infer whether a
      chain should be added.
      
      This patch adds additional logic to check various flag fields so that
      correct code can be generated even if Pattern is unset.
      
      llvm-svn: 159217
      e5629966
    • Argyrios Kyrtzidis's avatar
      Fix ThreadLocalImpl::getInstance for --disable-threads. · 46785f94
      Argyrios Kyrtzidis authored
      PR13114.
      
      llvm-svn: 159210
      46785f94
    • Jakob Stoklund Olesen's avatar
      Allow targets to inject passes before the virtual register rewriter. · 59a0d324
      Jakob Stoklund Olesen authored
      Such passes can be used to tweak the register assignments in a
      target-dependent way, for example to avoid write-after-write
      dependencies.
      
      llvm-svn: 159209
      59a0d324
    • Stepan Dyatkovskiy's avatar
      IntegersSubsetTest: Due to compilation failure with -std=c11, replaced -1UL... · 593d358c
      Stepan Dyatkovskiy authored
      IntegersSubsetTest: Due to compilation failure with -std=c11, replaced -1UL with NOT_A_NUMBER constant (0xffff).
      
      llvm-svn: 159207
      593d358c
    • Jack Carter's avatar
      There are a number of generic inline asm operand modifiers that · 5e69cffe
      Jack Carter authored
      up to r158925 were handled as processor specific. Making them 
      generic and putting tests for these modifiers in the CodeGen/Generic
      directory caused a number of targets to fail. 
      
      This commit addresses that problem by having the targets call 
      the generic routine for generic modifiers that they don't currently
      have explicit code for.
      
      For now only generic print operands 'c' and 'n' are supported.vi
      
      
      Affected files:
      
          test/CodeGen/Generic/asm-large-immediate.ll
          lib/Target/PowerPC/PPCAsmPrinter.cpp
          lib/Target/NVPTX/NVPTXAsmPrinter.cpp
          lib/Target/ARM/ARMAsmPrinter.cpp
          lib/Target/XCore/XCoreAsmPrinter.cpp
          lib/Target/X86/X86AsmPrinter.cpp
          lib/Target/Hexagon/HexagonAsmPrinter.cpp
          lib/Target/CellSPU/SPUAsmPrinter.cpp
          lib/Target/Sparc/SparcAsmPrinter.cpp
          lib/Target/MBlaze/MBlazeAsmPrinter.cpp
          lib/Target/Mips/MipsAsmPrinter.cpp
          
      MSP430 isn't represented because it did not even run with
      the long existing 'c' modifier and it was not apparent what
      needs to be done to get it inline asm ready.
      
      Contributer: Jack Carter
      llvm-svn: 159203
      5e69cffe
    • Duncan Sands's avatar
      Replacing zero-sized alloca's with a null pointer is too aggressive, instead · 8bc764ae
      Duncan Sands authored
      merge all zero-sized alloca's into one, fixing c43204g from the Ada ACATS
      conformance testsuite.  What happened there was that a variable sized object
      was being allocated on the stack, "alloca i8, i32 %size".  It was then being
      passed to another function, which tested that the address was not null (raising
      an exception if it was) then manipulated %size bytes in it (load and/or store).
      The optimizers cleverly managed to deduce that %size was zero (congratulations
      to them, as it isn't at all obvious), which made the alloca zero size, causing
      the optimizers to replace it with null, which then caused the check mentioned
      above to fail, and the exception to be raised, wrongly.  Note that no loads
      and stores were actually being done to the alloca (the loop that does them is
      executed %size times, i.e. is not executed), only the not-null address check.
      
      llvm-svn: 159202
      8bc764ae
    • Stepan Dyatkovskiy's avatar
      IntegersSubsetMapping: implemented "diff" operation. Operation allows at the... · e481e0da
      Stepan Dyatkovskiy authored
      IntegersSubsetMapping: implemented "diff" operation. Operation allows at the same time perform up to three operations:
      - LHS exclude RHS
      - LHS intersect RHS (LHS successors will keeped)
      - RHS exclude LHS
      The complexity is N+M, where
        N is size of LHS
        M is size of RHS.
      
      llvm-svn: 159201
      e481e0da
    • Stepan Dyatkovskiy's avatar
      IntegersSubsetMapping: removed exclude operation, it will replaced with more... · 883850c4
      Stepan Dyatkovskiy authored
      IntegersSubsetMapping: removed exclude operation, it will replaced with more universal "diff" operation in next commit.
      Changes was separated onto two commits for better readability.
      
      llvm-svn: 159200
      883850c4
    • Bill Wendling's avatar
      Sphyinxify the Bugpoint document. · b4e01abd
      Bill Wendling authored
      llvm-svn: 159199
      b4e01abd
    • Elena Demikhovsky's avatar
      Removed unused variable · 863d2d32
      Elena Demikhovsky authored
      llvm-svn: 159197
      863d2d32
Loading