Skip to content
  1. Jul 17, 2009
  2. Jul 16, 2009
    • Daniel Dunbar's avatar
      Add more testing of ?: for Obj-C object types. · 0418a5f1
      Daniel Dunbar authored
      llvm-svn: 76108
      0418a5f1
    • Daniel Dunbar's avatar
      [llvm up] Add support for '#' component of QA_OVERRIDE_GCC3_OPTIONS. · 54091b82
      Daniel Dunbar authored
       - This silences the output about how command line arguments are being changed.
      
      llvm-svn: 76107
      54091b82
    • 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
    • Daniel Dunbar's avatar
      Add extra print for --time-tests output. · dde5c8d5
      Daniel Dunbar authored
      llvm-svn: 76104
      dde5c8d5
    • Daniel Dunbar's avatar
      Add raw_null_ostream and llvm::nulls(), a raw_ostream that discards output. · 95a551ad
      Daniel Dunbar authored
       - No functionality change.
      
      llvm-svn: 76103
      95a551ad
    • 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
    • Jakob Stoklund Olesen's avatar
      Teach MachineInstr::isRegTiedToDefOperand() to correctly parse inline asm operands. · 070fab8a
      Jakob Stoklund Olesen authored
      The inline asm operands must be parsed from the first flag, you cannot assume
      that an immediate operand preceeding a register use operand is the flag.
      PowerPC "m" operands are represented as (flag, imm, reg) triples.
      isRegTiedToDefOperand() would incorrectly interpret the imm as the flag.
      
      llvm-svn: 76101
      070fab8a
    • Evan Cheng's avatar
    • Anton Korobeynikov's avatar
      Hook in s390x stuff into clang · b5b703b2
      Anton Korobeynikov authored
      llvm-svn: 76099
      b5b703b2
    • Ted Kremenek's avatar
      Add member template 'Type::getAs<T>', which converts a Type* to a respective T*. · e3fb4b65
      Ted Kremenek authored
      This method is intended to eventually replace the individual
      Type::getAsXXXType<> methods.
      
      The motivation behind this change is twofold:
      
      1) Reduce redundant implementations of Type::getAsXXXType() methods. Most of
      them are basically copy-and-paste.
      
      2) By centralizing the implementation of the getAs<Type> logic we can more
      smoothly move over to Doug Gregor's proposed canonical type smart pointer
      scheme.
      
      Along with this patch:
      
      a) Removed 'Type::getAsPointerType()'; now clients use getAs<PointerType>.
      b) Removed 'Type::getAsBlockPointerTypE()'; now clients use getAs<BlockPointerType>.
      
      llvm-svn: 76098
      e3fb4b65
    • Owen Anderson's avatar
      Privatize the ConstantFP table. I'm on a roll! · c277dc40
      Owen Anderson authored
      llvm-svn: 76097
      c277dc40
    • Chris Lattner's avatar
      this should be xfailed on darwin. Darwin doesn't use the libstdc++ in the... · bf61e3b4
      Chris Lattner authored
      this should be xfailed on darwin.  Darwin doesn't use the libstdc++ in the llvm-gcc distro, it uses the system version.
      
      llvm-svn: 76095
      bf61e3b4
    • 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
    • Ted Kremenek's avatar
      Update CMake file. · 4ded3d3d
      Ted Kremenek authored
      llvm-svn: 76093
      4ded3d3d
    • Ted Kremenek's avatar
      Move the source-level CFG from libAST to libAnalysis. · 6796fbd2
      Ted Kremenek authored
      llvm-svn: 76092
      6796fbd2
    • Ted Kremenek's avatar
      Add 'clang-wpa' to the CMake-based build. · afe797d7
      Ted Kremenek authored
      llvm-svn: 76091
      afe797d7
Loading