Add VC itoa perf comparison
This commit is contained in:
parent
e1cdf1229e
commit
74a135678a
@ -422,7 +422,7 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
inline bool Writer1<rapidjson::StringBuffer>::WriteUint(unsigned u) {
|
bool Writer1<rapidjson::StringBuffer>::WriteUint(unsigned u) {
|
||||||
char buffer[10];
|
char buffer[10];
|
||||||
char* p = buffer;
|
char* p = buffer;
|
||||||
do {
|
do {
|
||||||
@ -953,6 +953,32 @@ TEST_F(Misc, itoa64_sprintf) {
|
|||||||
OUTPUT_LENGTH(length);
|
OUTPUT_LENGTH(length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
TEST_F(Misc, itoa_VC) {
|
||||||
|
size_t length = 0;
|
||||||
|
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
||||||
|
for (size_t j = 0; j < randvalCount; j++) {
|
||||||
|
char buffer[32];
|
||||||
|
_itoa(randval[j], buffer, 10);
|
||||||
|
length += strlen(buffer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
OUTPUT_LENGTH(length);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST_F(Misc, itoa64_VC) {
|
||||||
|
size_t length = 0;
|
||||||
|
for (size_t i = 0; i < kItoaTrialCount; i++) {
|
||||||
|
for (size_t j = 0; j < randvalCount; j++) {
|
||||||
|
char buffer[32];
|
||||||
|
_i64toa(randval[j] * randval[j], buffer, 10);
|
||||||
|
length += strlen(buffer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
OUTPUT_LENGTH(length);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
TEST_F(Misc, itoa_strtk) {
|
TEST_F(Misc, itoa_strtk) {
|
||||||
size_t length = 0;
|
size_t length = 0;
|
||||||
std::string s;
|
std::string s;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user