Changes in directory llvm-test/SingleSource/UnitTests/Integer/APInt:
arith.cpp updated: 1.9 -> 1.10 --- Log message: Consolidate printing of APInt into a single functions. Always print both the decimal and hexadecimal representations of an APInt. --- Diffs of the changes: (+50 -50) arith.cpp | 100 +++++++++++++++++++++++++++++++------------------------------- 1 files changed, 50 insertions(+), 50 deletions(-) Index: llvm-test/SingleSource/UnitTests/Integer/APInt/arith.cpp diff -u llvm-test/SingleSource/UnitTests/Integer/APInt/arith.cpp:1.9 llvm-test/SingleSource/UnitTests/Integer/APInt/arith.cpp:1.10 --- llvm-test/SingleSource/UnitTests/Integer/APInt/arith.cpp:1.9 Sun Feb 18 14:21:27 2007 +++ llvm-test/SingleSource/UnitTests/Integer/APInt/arith.cpp Sun Feb 18 16:29:58 2007 @@ -16,18 +16,18 @@ using namespace llvm; APInt x(21, 0x1fffff); - APInt y(21, 0x0fffff); -static std::string temp_str; - -const char* str(const APInt& X, bool wantSigned = false) { - temp_str = X.toString(10,wantSigned); - return temp_str.c_str(); +void print(const APInt& X, bool wantSigned = false, bool withNL = true) { + std::string decstr = X.toString(10,wantSigned); + std::string hexstr = X.toString(16,false); + printf("%s (%s)", decstr.c_str(), hexstr.c_str()); + if (withNL) + printf("\n"); } void test_interface(const APInt &val) { - printf("INTERFACE TEST: val = %s\n", str(val)); + printf("INTERFACE TEST: val = "); print(val); unsigned bitwidth = val.getBitWidth(); unsigned pos = rand() % bitwidth; printf("val[%u] = %d\n", pos, val[pos]); @@ -35,54 +35,54 @@ APInt umax(APInt::getMaxValue(bitwidth, false)); APInt smin(APInt::getMinValue(bitwidth, true)); APInt umin(APInt::getMinValue(bitwidth, false)); - printf("APInt::getMinValue(%d, true) = %s\n", bitwidth, str(smin,true)); - printf("APInt::getMaxValue(%d, true) = %s\n", bitwidth, str(smax,true)); - printf("APInt::getMinValue(%d, false) = %s\n", bitwidth, str(umin)); - printf("APInt::getMaxValue(%d, false) = %s\n", bitwidth, str(umax)); + printf("APInt::getMinValue(%d, true) = ", bitwidth); print(smin,true); + printf("APInt::getMaxValue(%d, true) = ", bitwidth); print(smax,true); + printf("APInt::getMinValue(%d, false) = ", bitwidth); print(umin); + printf("APInt::getMaxValue(%d, false) = ", bitwidth); print(umax); APInt null = APInt::getNullValue(bitwidth); APInt allone = APInt::getAllOnesValue(bitwidth); - printf("APInt::getNullValue(%d) = %s\n", bitwidth, str(null)); - printf("APInt::getAllOnesValue(%d) = %s\n", bitwidth, str(allone)); + printf("APInt::getNullValue(%d) = ", bitwidth); print(null); + printf("APInt::getAllOnesValue(%d) = ", bitwidth); print(allone); APInt x(val); x.set(pos); - printf("val.set(%d) = %s\n", pos, str(x)); + printf("val.set(%d) = ", pos); print(x); x.set(); - printf("val.set() = %s\n", str(x)); + printf("val.set() = "); print(x); x = val; x.clear(pos); - printf("val.clear(%d) = %s\n", pos, str(x)); + printf("val.clear(%d) = ", pos); print(x); x.clear(); - printf("val.clear() = %s\n", str(x)); + printf("val.clear() = "); print(x); x = val; x.flip(pos); - printf("val.flip(%d) = %s\n", pos, str(x)); + printf("val.flip(%d) = ", pos); print(x); x = val; x.flip(); - printf("val.flip() = %s\n", str(x)); + printf("val.flip() = "); print(x); unsigned bitsize = bitwidth / 2; - printf("val.getHiBits(%d) = %s\n", bitsize, str(val.getHiBits(bitsize))); - printf("val.getLoBits(%d) = %s\n", bitsize, str(val.getLoBits(bitsize))); + printf("val.getHiBits(%d) = ", bitsize); print(val.getHiBits(bitsize)); + printf("val.getLoBits(%d) = ", bitsize); print(val.getLoBits(bitsize)); printf("val.isIntN(%d) = %d\n", bitwidth, val.isIntN(bitwidth)); } void test_unops(const APInt &val) { - printf("UNARY OPERATORS TEST: val = %s\n", str(val)); + printf("UNARY OPERATORS TEST: val = "); print(val); APInt x(val); x++; - printf("val++ = %s\n", str(x)); + printf("val++ = "); print(x); x = val; ++x; - printf("++val = %s\n", str(x)); + printf("++val = "); print(x); x = val; x--; - printf("val-- = %s\n", str(x)); + printf("val-- = "); print(x); x = val; --x; - printf("--val = %s\n", str(x)); + printf("--val = "); print(x); x = -val; - printf("-val = %s\n", str(x)); + printf("-val = "); print(x); x = ~val; - printf("~val = %s\n", str(x)); + printf("~val = "); print(x); printf("!val = %d\n", !val); printf("val.isPowerOf2() = %d\n", val.isPowerOf2()); printf("val.logBase2() = %d\n", val.logBase2()); @@ -92,7 +92,7 @@ printf("val.getBitWidth() = %d\n", val.getBitWidth()); if (val.getBitWidth() >= 16 && val.getBitWidth() % 16 == 0) { x = val.byteSwap(); - printf("val.byteSwap() = %d\n", str(x)); + printf("val.byteSwap() = "); print(x); } printf("val.roundToDouble(false) = %f\n", val.roundToDouble(false)); printf("val.roundToDouble(true) = %f\n", val.roundToDouble(true)); @@ -104,38 +104,38 @@ } void test_binops(const APInt &v1, const APInt &v2) { - printf("BINARY OPERATORS TEST: vl = %s, ", str(v1)); - printf("v2 = %s\n", str(v2)); + printf("BINARY OPERATORS TEST: vl = "); print(v1,false,false); + printf(", v2 = "); print(v2); APInt result(v1); result &= v2; - printf("v1 &= v2: %s\n", str(result)); + printf("v1 &= v2: "); print(result); result = v1; result |= v2; - printf("v1 |= v2: %s\n", str(result)); + printf("v1 |= v2: "); print(result); result = v1; result ^= v2; - printf("v1 ^= v2: %s\n", str(result)); + printf("v1 ^= v2: "); print(result); result = v1; result *= v2; - printf("v1 *= v2: %s\n", str(result)); + printf("v1 *= v2: "); print(result); result = v1; result += v2; - printf("v1 += v2: %s\n", str(result)); + printf("v1 += v2: "); print(result); result = v1; result -= v2; - printf("v1 -= v2: %s\n", str(result)); + printf("v1 -= v2: "); print(result); result = v1 & v2; - printf("v1 & v2: %s\n", str(result)); + printf("v1 & v2: "); print(result); result = v1 | v2; - printf("v1 | v2: %s\n", str(result)); + printf("v1 | v2: "); print(result); result = v1 ^ v2; - printf("v1 ^ v2: %s\n", str(result)); + printf("v1 ^ v2: "); print(result); result = v1 * v2; - printf("v1 * v2: %s\n", str(result)); + printf("v1 * v2: "); print(result); result = v1 + v2; - printf("v1 + v2: %s\n", str(result)); + printf("v1 + v2: "); print(result); result = v1 - v2; - printf("v1 - v2: %s\n", str(result)); + printf("v1 - v2: "); print(result); printf("v1 == v2: %d\n", v1 == v2); printf("v1 != v2: %d\n", v1 != v2); printf("v1.eq(v2): %d\n", v1.eq(v2)); @@ -152,22 +152,22 @@ using namespace APIntOps; unsigned shiftAmt = rand() % v1.getBitWidth(); result = ashr(v1,shiftAmt); - printf("ashr(v1,%d) = %s\n", shiftAmt, str(result)); + printf("ashr(v1,%d) = ", shiftAmt); print(result); result = lshr(v1,shiftAmt); - printf("lshr(v1,%d) = %s\n", shiftAmt, str(result)); + printf("lshr(v1,%d) = ", shiftAmt); print(result); result = shl(v1,shiftAmt); - printf("shl(v1,%d) = %s\n", shiftAmt, str(result)); + printf("shl(v1,%d) = ", shiftAmt); print(result); if (v2 == 0) printf("sdiv/udiv/srem/urem not tested, v2 == 0\n"); else { result = sdiv(v1,v2); - printf("sdiv(v1,v2) = %s\n", str(result)); + printf("sdiv(v1,v2) = "); print(result); result = udiv(v1,v2); - printf("udiv(v1,v2) = %s\n", str(result)); + printf("udiv(v1,v2) = "); print(result); result = srem(v1,v2); - printf("srem(v1,v2) = %s\n", str(result)); + printf("srem(v1,v2) = "); print(result); result = urem(v1,v2); - printf("urem(v1,v2) = %s\n", str(result)); + printf("urem(v1,v2) = "); print(result); } } } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits