nv50/ir: fix a couple of warnings
authorChristoph Bumiller <e0425955@student.tuwien.ac.at>
Sat, 12 Jan 2013 16:37:34 +0000 (17:37 +0100)
committerChristoph Bumiller <christoph.bumiller@speed.at>
Sat, 19 Jan 2013 19:54:39 +0000 (20:54 +0100)
src/gallium/drivers/nv50/codegen/nv50_ir_from_tgsi.cpp
src/gallium/drivers/nv50/codegen/nv50_ir_ra.cpp
src/gallium/drivers/nv50/codegen/nv50_ir_target.h

index cf483d0deb97f257dcccf4375ebb3f1de3062bcc..5078eb4d6f88036773fdce32671dba1bfac35e86 100644 (file)
@@ -722,7 +722,9 @@ bool Source::scanSource()
    if (info->io.genUserClip > 0) {
       info->io.clipDistanceMask = (1 << info->io.genUserClip) - 1;
 
-      for (unsigned int n = 0; n < ((info->io.genUserClip + 3) / 4); ++n) {
+      const unsigned int nOut = (info->io.genUserClip + 3) / 4;
+
+      for (unsigned int n = 0; n < nOut; ++n) {
          unsigned int i = info->numOutputs++;
          info->out[i].id = i;
          info->out[i].sn = TGSI_SEMANTIC_CLIPDIST;
index 714837e5c27e599fb92b11673efb6fe08e71b896..9947c043b64de65bb1cc727ecbee4bd13812990c 100644 (file)
@@ -263,7 +263,7 @@ public:
 
    bool run(const std::list<ValuePair>&);
 
-   Symbol *assignSlot(const Interval&, unsigned int size);
+   Symbol *assignSlot(const Interval&, const unsigned int size);
    inline int32_t getStackSize() const { return stackSize; }
 
 private:
@@ -1384,7 +1384,7 @@ GCRA::cleanup(const bool success)
 }
 
 Symbol *
-SpillCodeInserter::assignSlot(const Interval &livei, unsigned int size)
+SpillCodeInserter::assignSlot(const Interval &livei, const unsigned int size)
 {
    SpillSlot slot;
    int32_t offsetBase = stackSize;
@@ -1397,21 +1397,22 @@ SpillCodeInserter::assignSlot(const Interval &livei, unsigned int size)
    slot.sym = NULL;
 
    for (offset = offsetBase; offset < stackSize; offset += size) {
+      const int32_t entryEnd = offset + size;
       while (it != slots.end() && it->offset < offset)
          ++it;
       if (it == slots.end()) // no slots left
          break;
       std::list<SpillSlot>::iterator bgn = it;
 
-      while (it != slots.end() && it->offset < (offset + size)) {
+      while (it != slots.end() && it->offset < entryEnd) {
          it->occup.print();
          if (it->occup.overlaps(livei))
             break;
          ++it;
       }
-      if (it == slots.end() || it->offset >= (offset + size)) {
+      if (it == slots.end() || it->offset >= entryEnd) {
          // fits
-         for (; bgn != slots.end() && bgn->offset < (offset + size); ++bgn) {
+         for (; bgn != slots.end() && bgn->offset < entryEnd; ++bgn) {
             bgn->occup.insert(livei);
             if (bgn->size() == size)
                slot.sym = bgn->sym;
index c60ee0216f7198db043023390eccc3c8995a44b9..757f4f9437f6cdb8e5d2a3cc48bef156dd7a0413 100644 (file)
@@ -62,6 +62,7 @@ class CodeEmitter
 {
 public:
    CodeEmitter(const Target *);
+   virtual ~CodeEmitter();
 
    // returns whether the instruction was encodable and written
    virtual bool emitInstruction(Instruction *) = 0;
@@ -117,6 +118,7 @@ class Target
 {
 public:
    Target(bool j, bool s) : joinAnterior(j), hasSWSched(s) { }
+   virtual ~Target();
 
    static Target *create(uint32_t chipset);
    static void destroy(Target *);