Skip to content
  1. Jul 19, 2009
  2. Jul 18, 2009
  3. Jul 17, 2009
  4. Jul 16, 2009
    • Jakob Stoklund Olesen's avatar
      Silence warning in Linux builds: · c7895d3c
      Jakob Stoklund Olesen authored
      X86InstrInfo.cpp:2272: warning: suggest explicit braces to avoid ambiguous 'else'
      
      llvm-svn: 76105
      c7895d3c
    • Jeffrey Yasskin's avatar
      Add line numbers to OProfile. To do this, I added a processDebugLoc() · efad8e45
      Jeffrey Yasskin authored
      call to the MachineCodeEmitter interface and made copying the start
      line of a function not conditional on whether we're emitting Dwarf
      debug information. I'll propagate the processDebugLoc() calls to the
      non-X86 targets in a followup patch.
      
      In the long run, it'll probably be better to gather this information
      through the DwarfWriter, but the DwarfWriter currently depends on the
      AsmPrinter and TargetAsmInfo, and fixing that would be out of the way
      for this patch.
      
      There's a bug in OProfile 0.9.4 that makes it ignore line numbers for
      addresses above 4G, and a patch fixing it at
      http://thread.gmane.org/gmane.linux.oprofile/7634
      
      Sample output:
      
      $ sudo opcontrol --reset; sudo opcontrol --start-daemon; sudo opcontrol --start; `pwd`/Debug/bin/lli fib.bc; sudo opcontrol --stop
      Signalling daemon... done
      Profiler running.
      fib(40) == 165580141
      Stopping profiling.
      
      $ opreport -g -d -l `pwd`/Debug/bin/lli|head -60
      Overflow stats not available
      CPU: Core 2, speed 1998 MHz (estimated)
      Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a unit mask of 0x00 (Unhalted core cycles) count 100000
      vma      samples  %        linenr info                 image name               symbol name
      00007f67a30370b0 25489    61.2554  fib.c:24                    10946.jo                 fib_left
        00007f67a30370b0 1634      6.4106  fib.c:24
        00007f67a30370b1 83        0.3256  fib.c:24
        00007f67a30370b9 1997      7.8348  fib.c:24
        00007f67a30370c6 2080      8.1604  fib.c:27
        00007f67a30370c8 988       3.8762  fib.c:27
        00007f67a30370cd 1315      5.1591  fib.c:27
        00007f67a30370cf 251       0.9847  fib.c:27
        00007f67a30370d3 1191      4.6726  fib.c:27
        00007f67a30370d6 975       3.8252  fib.c:27
        00007f67a30370db 1010      3.9625  fib.c:27
        00007f67a30370dd 242       0.9494  fib.c:27
        00007f67a30370e1 2782     10.9145  fib.c:28
        00007f67a30370e5 3768     14.7828  fib.c:28
        00007f67a30370eb 615       2.4128  (no location information)
        00007f67a30370f3 6558     25.7287  (no location information)
      00007f67a3037100 15603    37.4973  fib.c:29                    10946.jo                 fib_right
        00007f67a3037100 1646     10.5493  fib.c:29
        00007f67a3037101 45        0.2884  fib.c:29
        00007f67a3037109 2372     15.2022  fib.c:29
        00007f67a3037116 2234     14.3178  fib.c:32
        00007f67a3037118 612       3.9223  fib.c:32
        00007f67a303711d 622       3.9864  fib.c:32
        00007f67a303711f 385       2.4675  fib.c:32
        00007f67a3037123 404       2.5892  fib.c:32
        00007f67a3037126 634       4.0633  fib.c:32
        00007f67a303712b 870       5.5759  fib.c:32
        00007f67a303712d 62        0.3974  fib.c:32
        00007f67a3037131 1848     11.8439  fib.c:33
        00007f67a3037135 2840     18.2016  fib.c:33
        00007f67a303713a 1         0.0064  fib.c:33
        00007f67a303713b 1023      6.5564  (no location information)
        00007f67a3037143 5         0.0320  (no location information)
      000000000080c1e4 15        0.0360  MachineOperand.h:150        lli                      llvm::MachineOperand::isReg() const
        000000000080c1e4 6        40.0000  MachineOperand.h:150
        000000000080c1ec 2        13.3333  MachineOperand.h:150
      ...
      
      llvm-svn: 76102
      efad8e45
    • Evan Cheng's avatar
      With recent MC changes, RIP base register is explicitly modeled. Make sure we... · fdd0eb40
      Evan Cheng authored
      With recent MC changes, RIP base register is explicitly modeled. Make sure we add it when x86 V_SET0 / V_SETALLONES (by transforming it into a constpool load) into the use instruction.
      
      llvm-svn: 76094
      fdd0eb40
    • Anton Korobeynikov's avatar
      12b4b7c5
    • Evan Cheng's avatar
      Let callers decide the sub-register index on the def operand of rematerialized instructions. · 84517443
      Evan Cheng authored
      Avoid remat'ing instructions whose def have sub-register indices for now. It's just really really hard to get all the cases right.
      
      llvm-svn: 75900
      84517443
    • Chris Lattner's avatar
      use SUBREG_TO_REG instead of INSERT_SUBREG, this way the code · d8fc886b
      Chris Lattner authored
      generator can know the top bits are zero, not undefined.
      Thanks to Dan for pointing this out.
      
      llvm-svn: 75899
      d8fc886b
    • Daniel Dunbar's avatar
      Kill off <TARGET>MachineModule variables, and <TARGETASMPRINTER>ForceLink · c151c51e
      Daniel Dunbar authored
      variables.
       - Module initialization functions supplanted the need for these.
      
      llvm-svn: 75886
      c151c51e
    • Daniel Dunbar's avatar
      Lift addAssemblyEmitter into LLVMTargetMachine. · d97db682
      Daniel Dunbar authored
       - No functionality change.
      
      llvm-svn: 75859
      d97db682
    • Daniel Dunbar's avatar
      Lift DumpAsm / -print-emitted-asm functionality into LLVMTargetMachine. · c901392b
      Daniel Dunbar authored
       - No intended functionality change.
      
      llvm-svn: 75848
      c901392b
    • Daniel Dunbar's avatar
      Remove old style hacks to register AsmPrinter into TargetMachine. · 5302288c
      Daniel Dunbar authored
       - No intended functionality change.
      
      llvm-svn: 75843
      5302288c
  5. Jul 15, 2009
  6. Jul 14, 2009
    • Bruno Cardoso Lopes's avatar
      Use the right relocation type for X86::MOV64ri64i32 · ef130cfa
      Bruno Cardoso Lopes authored
      llvm-svn: 75687
      ef130cfa
    • Chris Lattner's avatar
      reapply r75408, which eliminates MOV64r0 in favor of using · 79c136d4
      Chris Lattner authored
      MOV32r0 + subregs to do the same thing.  This should work now
      that PR4544 is fixed.  Thanks Evan!
      
      llvm-svn: 75671
      79c136d4
    • David Greene's avatar
      · a31f96cf
      David Greene authored
      Have asm printers use formatted_raw_ostream directly to avoid a
      dynamic_cast<>.
      
      llvm-svn: 75670
      a31f96cf
    • Chris Lattner's avatar
      Reapply my previous asmprinter changes now with more testing and two · 8c9a96b9
      Chris Lattner authored
      additional bug fixes:
      
      1. The bug that everyone hit was a problem in the asmprinter where it
         would remove $stub but keep the L prefix on a name when emitting the
         indirect symbol.  This is easy to fix by keeping the name of the stub
         and the name of the symbol in a StringMap instead of just keeping a
         StringSet and trying to reconstruct it late.
      
      2. There was a problem printing the personality function.  The current
         logic to print out the personality function from the DWARF information
         is a bit of a cesspool right now that duplicates a bunch of other 
         logic in the asm printer.  The short version of it is that it depends
         on emitting both the L and _ prefix for symbols (at least on darwin)
         and until I can untangle it, it is best to switch the mangler back to
         emitting both prefixes.
      
      llvm-svn: 75646
      8c9a96b9
    • Torok Edwin's avatar
      llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable. · fbcc663c
      Torok Edwin authored
      This adds location info for all llvm_unreachable calls (which is a macro now) in
      !NDEBUG builds.
      In NDEBUG builds location info and the message is off (it only prints
      "UREACHABLE executed").
      
      llvm-svn: 75640
      fbcc663c
    • Daniel Dunbar's avatar
      Revert r75615, which depended on 75610. · 6c5282e3
      Daniel Dunbar authored
      --- Reverse-merging r75615 into '.':
      U    lib/Target/XCore/XCoreAsmPrinter.cpp
      U    lib/Target/PIC16/PIC16AsmPrinter.cpp
      U    lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp
      U    lib/Target/MSP430/MSP430AsmPrinter.cpp
      U    lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp
      U    lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp
      U    lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
      U    lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
      U    lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp
      U    lib/Target/MSIL/MSILWriter.cpp
      U    lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp
      U    lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp
      
      llvm-svn: 75637
      6c5282e3
Loading