@@ -117,21 +117,21 @@ static bool _displ_operand_rule(RDLexer* lex, void* userdata) {
117117
118118 if (!first ) {
119119 if (!rd_lexer_next (lex , & tok )) {
120- RD_LOG_FAIL_TO (data -> buf , "unterminated memory operand" );
120+ rd_format_to (data -> buf , "unterminated memory operand" );
121121 return false;
122122 }
123123
124124 bool plus = tok .type == RD_TOK_PLUS ;
125125 minus = tok .type == RD_TOK_MINUS ;
126126
127127 if (!plus && !minus ) {
128- RD_LOG_FAIL_TO (data -> buf , "expected '+' or '-'" );
128+ rd_format_to (data -> buf , "expected '+' or '-'" );
129129 return false;
130130 }
131131 }
132132
133133 if (!rd_lexer_next (lex , & tok )) {
134- RD_LOG_FAIL_TO (data -> buf , "unterminated memory operand" );
134+ rd_format_to (data -> buf , "unterminated memory operand" );
135135 return false;
136136 }
137137
@@ -143,21 +143,21 @@ static bool _displ_operand_rule(RDLexer* lex, void* userdata) {
143143 bool scaled = rd_lexer_try_consume (lex , RD_TOK_ASTERISK , & tok );
144144
145145 if (scaled && !rd_lexer_next_expect (lex , RD_TOK_NUMBER , & tok )) {
146- RD_LOG_FAIL_TO (data -> buf , "expected scale value after '*'" );
146+ rd_format_to (data -> buf , "expected scale value after '*'" );
147147 return false;
148148 }
149149
150150 if (scaled ) curr_scale = (u8 )tok .u_value ;
151151
152152 if (scaled || base != ZYDIS_REGISTER_NONE ) {
153153 if (index != ZYDIS_REGISTER_NONE ) {
154- RD_LOG_FAIL_TO (data -> buf ,
155- "only one index register is allowed" );
154+ rd_format_to (data -> buf ,
155+ "only one index register is allowed" );
156156 return false;
157157 }
158158
159159 if (reg == ZYDIS_REGISTER_ESP || reg == ZYDIS_REGISTER_RSP ) {
160- RD_LOG_FAIL_TO (
160+ rd_format_to (
161161 data -> buf ,
162162 "ESP/RSP cannot be used as an index register" );
163163 return false;
@@ -174,7 +174,7 @@ static bool _displ_operand_rule(RDLexer* lex, void* userdata) {
174174
175175 RDAddress addr ;
176176 if (!rd_get_address (data -> ctx , name , & addr )) {
177- RD_LOG_FAIL_TO (
177+ rd_format_to (
178178 data -> buf ,
179179 "unknown register or symbol '%s' in memory operand" ,
180180 name );
@@ -189,15 +189,15 @@ static bool _displ_operand_rule(RDLexer* lex, void* userdata) {
189189 }
190190 else if (tok .type == RD_TOK_NUMBER ) {
191191 if (have_disp ) {
192- RD_LOG_FAIL_TO (data -> buf , "only one displacement is allowed" );
192+ rd_format_to (data -> buf , "only one displacement is allowed" );
193193 return false;
194194 }
195195
196196 disp = minus ? - (i64 )tok .u_value : (i64 )tok .u_value ;
197197 have_disp = true;
198198 }
199199 else {
200- RD_LOG_FAIL_TO (data -> buf , "unexpected token in memory operand" );
200+ rd_format_to (data -> buf , "unexpected token in memory operand" );
201201 return false;
202202 }
203203
@@ -206,7 +206,7 @@ static bool _displ_operand_rule(RDLexer* lex, void* userdata) {
206206
207207 if (base == ZYDIS_REGISTER_NONE && index == ZYDIS_REGISTER_NONE &&
208208 !have_disp ) {
209- RD_LOG_FAIL_TO (data -> buf , "empty memory operand" );
209+ rd_format_to (data -> buf , "empty memory operand" );
210210 return false;
211211 }
212212
@@ -226,14 +226,14 @@ bool x86_encoder_parse(RDLexer* lex, const char* s, X86GrammarData* data) {
226226
227227 RDToken tok ;
228228 if (!rd_lexer_next_expect (lex , RD_TOK_IDENTIFIER , & tok )) {
229- RD_LOG_FAIL_TO (data -> buf , "expected mnemonic in '%s'" , s );
229+ rd_format_to (data -> buf , "expected mnemonic in '%s'" , s );
230230 return false;
231231 }
232232
233233 ZydisMnemonic mnem = _x86_mnemonic_from_token (& tok );
234234 if (mnem == ZYDIS_MNEMONIC_INVALID ) {
235- RD_LOG_FAIL_TO (data -> buf , "unknown mnemonic '%.*s' in '%s'" ,
236- (int )tok .length , tok .value , s );
235+ rd_format_to (data -> buf , "unknown mnemonic '%.*s' in '%s'" ,
236+ (int )tok .length , tok .value , s );
237237 return false;
238238 }
239239
@@ -249,28 +249,28 @@ bool x86_encoder_parse(RDLexer* lex, const char* s, X86GrammarData* data) {
249249 RDToken peek ;
250250 if (rd_lexer_peek (lex , & peek )) {
251251 if (!rd_lexer_try_any (lex , OPERAND_ENTRIES , data )) {
252- RD_LOG_FAIL_TO (data -> buf , "expected operand in '%s'" , s );
252+ rd_format_to (data -> buf , "expected operand in '%s'" , s );
253253 return false;
254254 }
255255
256256 while (rd_lexer_peek_expect (lex , RD_TOK_COMMA , & tok )) {
257257 rd_lexer_consume (lex );
258258
259259 if (data -> req .operand_count >= ZYDIS_ENCODER_MAX_OPERANDS ) {
260- RD_LOG_FAIL_TO (data -> buf , "too many operands in '%s'" , s );
260+ rd_format_to (data -> buf , "too many operands in '%s'" , s );
261261 return false;
262262 }
263263
264264 if (!rd_lexer_try_any (lex , OPERAND_ENTRIES , data )) {
265- RD_LOG_FAIL_TO (data -> buf , "expected operand after ',' in '%s'" ,
266- s );
265+ rd_format_to (data -> buf , "expected operand after ',' in '%s'" ,
266+ s );
267267 return false;
268268 }
269269 }
270270 }
271271
272272 if (!rd_lexer_at_end (lex )) {
273- RD_LOG_FAIL_TO (data -> buf , "unexpected trailing input in '%s'" , s );
273+ rd_format_to (data -> buf , "unexpected trailing input in '%s'" , s );
274274 return false;
275275 }
276276
@@ -290,10 +290,10 @@ bool x86_encoder_parse(RDLexer* lex, const char* s, X86GrammarData* data) {
290290 if (op -> type != ZYDIS_OPERAND_TYPE_MEMORY || op -> mem .size != 0 ) continue ;
291291
292292 if (!reg_size ) {
293- RD_LOG_FAIL_TO (data -> buf ,
294- "ambiguous memory operand size in '%s' "
295- "specify byte/word/dword/qword ptr" ,
296- s );
293+ rd_format_to (data -> buf ,
294+ "ambiguous memory operand size in '%s' "
295+ "specify byte/word/dword/qword ptr" ,
296+ s );
297297 return false;
298298 }
299299
0 commit comments