diff options
author | Junyan He <junyan.he@intel.com> | 2017-06-23 18:18:29 +0800 |
---|---|---|
committer | Yang Rong <rong.r.yang@intel.com> | 2017-08-02 17:16:30 +0800 |
commit | 87f7a98225991f99928b3a933c229aed420af61b (patch) | |
tree | 689455825b699d5a5b2ce7945763c332e5f65892 /backend/src/llvm/llvm_printf_parser.cpp | |
parent | de4044d0278c8487405d073eab4114c37eb9e5a9 (diff) | |
download | beignet-newRT.tar.gz |
Implement printf for new runtime.newRT
We will store printf statement in ELF file and output its log
when the ND_Range finished.
Signed-off-by: Junyan He <junyan.he@intel.com>
Diffstat (limited to 'backend/src/llvm/llvm_printf_parser.cpp')
-rw-r--r-- | backend/src/llvm/llvm_printf_parser.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/backend/src/llvm/llvm_printf_parser.cpp b/backend/src/llvm/llvm_printf_parser.cpp index 6bb7c52a..b8c6114e 100644 --- a/backend/src/llvm/llvm_printf_parser.cpp +++ b/backend/src/llvm/llvm_printf_parser.cpp @@ -245,16 +245,18 @@ again: /* Now parse the % start conversion_specifier. */ ret_char = __parse_printf_state(p, end, &rend, &state); - if (ret_char < 0) + if (ret_char < 0) { goto error; + } else { + std::string s(p, size_t(rend - p)); + printf_fmt->push_back(PrintfSlot(state, s)); + num++; - printf_fmt->push_back(state); - num++; - - if (rend == end) - break; + if (rend == end) + break; - begin = rend; + begin = rend; + } } #if 0 |