diff options
author | Joshua Haberman <jhaberman@gmail.com> | 2011-08-17 08:15:57 -0700 |
---|---|---|
committer | Joshua Haberman <jhaberman@gmail.com> | 2011-08-17 08:15:57 -0700 |
commit | fa82e4fbf065bb474b0f87023f66edffb8a5b850 (patch) | |
tree | e515ba7d9a431a05b08468619b8289d7bc9b1527 /benchmarks/parsetostruct.upb_table.c | |
parent | 51d4e295a4d8e55facf0e95502cde75d488fd511 (diff) |
Benchmark JIT vs no JIT without forcing a whole-project recompile.
Diffstat (limited to 'benchmarks/parsetostruct.upb_table.c')
-rw-r--r-- | benchmarks/parsetostruct.upb_table.c | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/benchmarks/parsetostruct.upb_table.c b/benchmarks/parsetostruct.upb_table.c deleted file mode 100644 index 88f355d..0000000 --- a/benchmarks/parsetostruct.upb_table.c +++ /dev/null @@ -1,75 +0,0 @@ - -#include "main.c" - -#include "upb/bytestream.h" -#include "upb/def.h" -#include "upb/msg.h" -#include "upb/pb/decoder.h" -#include "upb/pb/glue.h" - -static upb_msgdef *def; -static size_t len; -static void *msg; -static upb_stringsrc strsrc; -static upb_decoder d; - -static bool initialize() -{ - // Initialize upb state, decode descriptor. - upb_status status = UPB_STATUS_INIT; - upb_symtab *s = upb_symtab_new(); - upb_read_descriptorfile(s, MESSAGE_DESCRIPTOR_FILE, &status); - if(!upb_ok(&status)) { - upb_status_print(&status, stderr); - return false; - } - - def = upb_dyncast_msgdef(upb_symtab_lookup(s, MESSAGE_NAME)); - if(!def) { - fprintf(stderr, "Error finding symbol '%s'.\n", MESSAGE_NAME); - return false; - } - upb_symtab_unref(s); - - // Read the message data itself. - char *str = upb_readfile(MESSAGE_FILE, &len); - if(str == NULL) { - fprintf(stderr, "Error reading " MESSAGE_FILE "\n"); - return false; - } - upb_status_uninit(&status); - msg = upb_stdmsg_new(def); - - upb_stringsrc_init(&strsrc); - upb_stringsrc_reset(&strsrc, str, len); - upb_decoder_initformsgdef(&d, def); - - if (!BYREF) { - // TODO: use byref/byval accessors. - } - return true; -} - -static void cleanup() -{ - upb_stdmsg_free(msg, def); - upb_def_unref(UPB_UPCAST(def)); - upb_stringsrc_uninit(&strsrc); - upb_decoder_uninit(&d); -} - -static size_t run(int i) -{ - (void)i; - upb_status status = UPB_STATUS_INIT; - upb_msg_clear(msg, def); - upb_decoder_reset(&d, upb_stringsrc_bytesrc(&strsrc), 0, UINT64_MAX, msg); - upb_decoder_decode(&d, &status); - if(!upb_ok(&status)) goto err; - return len; - -err: - fprintf(stderr, "Decode error: "); - upb_status_print(&status, stderr); - return 0; -} |