Changeset 161672 in webkit for trunk/Source/JavaScriptCore
- Timestamp:
- Jan 10, 2014, 1:37:34 PM (11 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/CMakeLists.txt
r161563 r161672 499 499 endif () 500 500 501 if (WTF_USE_UDIS86) 502 set(UDIS_GEN_DEP 503 disassembler/udis86/ud_opcode.py 504 disassembler/udis86/ud_optable.py 505 ) 506 507 add_custom_command( 508 OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/udis86_itab.c ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/udis86_itab.h 509 DEPENDS ${UDIS_GEN_DEP} 510 WORKING_DIRECTORY ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR} 511 COMMAND ${PYTHON_EXECUTABLE} ${JAVASCRIPTCORE_DIR}/disassembler/udis86/itab.py ${JAVASCRIPTCORE_DIR}/disassembler/udis86/optable.xml 512 VERBATIM) 513 514 list(APPEND JavaScriptCore_INCLUDE_DIRECTORIES 515 ${JAVASCRIPTCORE_DIR}/disassembler/udis86 516 ) 517 list(APPEND JavaScriptCore_HEADERS 518 ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/udis86_itab.h 519 ) 520 list(APPEND JavaScriptCore_SOURCES 521 disassembler/udis86/udis86.c 522 disassembler/udis86/udis86_decode.c 523 disassembler/udis86/udis86_input.c 524 disassembler/udis86/udis86_itab_holder.c 525 disassembler/udis86/udis86_syn-att.c 526 disassembler/udis86/udis86_syn-intel.c 527 disassembler/udis86/udis86_syn.c 528 ) 529 endif () 530 501 531 if (ENABLE_LLINT) 502 532 # We cannot check for RUBY_FOUND because it is set only when the full package is installed and -
trunk/Source/JavaScriptCore/ChangeLog
r161659 r161672 1 2014-01-10 Tamas Gergely <[email protected]> 2 3 [EFL][JSC] Enable udis86 disassembler on efl. 4 https://bugs.webkit.org/show_bug.cgi?id=125502 5 6 Reviewed by Michael Saboff. 7 8 Enable udis86 disassembler on efl and fix build warnings. 9 10 * CMakeLists.txt: 11 Add udis86 disassembler source files. 12 * disassembler/udis86/udis86_decode.c: 13 (decode_modrm_rm): 14 Build warning fixes. 15 * disassembler/udis86/udis86_syn-att.c: 16 (gen_operand): 17 Build warning fixes. 18 * disassembler/udis86/udis86_syn-intel.c: 19 (gen_operand): 20 Build warning fixes. 21 * disassembler/udis86/udis86_types.h: 22 Correct FMT64 for uint64_t. 23 1 24 2014-01-09 Benjamin Poulain <[email protected]> 2 25 -
trunk/Source/JavaScriptCore/disassembler/udis86/udis86_decode.c
r138449 r161672 460 460 reg = (REX_R(u->pfx_rex) << 3) | MODRM_REG(modrm(u)); 461 461 462 UNUSED_PARAM(reg); 463 462 464 op->size = resolve_operand_size(u, size); 463 465 -
trunk/Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c
r156111 r161672 82 82 } else if (op->offset == 64) { 83 83 if (op->lval.sdword < 0) 84 mkasm(u, "-0x" FMT64 "x",-op->lval.sqword);85 else 86 mkasm(u, "0x" FMT64 "x",op->lval.sqword);84 mkasm(u, "-0x" FMT64 "x", (uint64_t)-op->lval.sqword); 85 else 86 mkasm(u, "0x" FMT64 "x", (uint64_t)op->lval.sqword); 87 87 } 88 88 … … 120 120 if ( sext_size < 64 ) 121 121 sext_mask = ( 1ull << sext_size ) - 1; 122 mkasm( u, "$0x" FMT64 "x", imm & sext_mask);122 mkasm( u, "$0x" FMT64 "x", (uint64_t)(imm & sext_mask) ); 123 123 124 124 break; … … 128 128 switch (op->size) { 129 129 case 8: 130 mkasm(u, "0x" FMT64 "x", u->pc + op->lval.sbyte);130 mkasm(u, "0x" FMT64 "x", (uint64_t)(u->pc + op->lval.sbyte)); 131 131 break; 132 132 case 16: 133 mkasm(u, "0x" FMT64 "x", (u ->pc + op->lval.sword) & 0xffff);133 mkasm(u, "0x" FMT64 "x", (uint64_t)((u->pc + op->lval.sword) & 0xffff) ); 134 134 break; 135 135 case 32: 136 136 if (u->dis_mode == 32) 137 mkasm(u, "0x" FMT64 "x", (u->pc + op->lval.sdword) & 0xffffffff);137 mkasm(u, "0x" FMT64 "x", (uint64_t)((u->pc + op->lval.sdword) & 0xffffffff)); 138 138 else 139 mkasm(u, "0x" FMT64 "x", u->pc + op->lval.sdword);139 mkasm(u, "0x" FMT64 "x", (uint64_t)(u->pc + op->lval.sdword)); 140 140 break; 141 141 default:break; -
trunk/Source/JavaScriptCore/disassembler/udis86/udis86_syn-intel.c
r138449 r161672 107 107 } 108 108 else if (op->offset == 64) 109 mkasm(u, "%s0x" FMT64 "x", (op_f) ? "+" : "", op->lval.uqword);109 mkasm(u, "%s0x" FMT64 "x", (op_f) ? "+" : "", (uint64_t)op->lval.uqword); 110 110 111 111 mkasm(u, "]"); … … 134 134 if ( sext_size < 64 ) 135 135 sext_mask = ( 1ull << sext_size ) - 1; 136 mkasm( u, "0x" FMT64 "x", imm & sext_mask);136 mkasm( u, "0x" FMT64 "x", (uint64_t)(imm & sext_mask) ); 137 137 138 138 break; … … 144 144 switch (op->size) { 145 145 case 8: 146 mkasm(u, "0x" FMT64 "x", u->pc + op->lval.sbyte);146 mkasm(u, "0x" FMT64 "x", (uint64_t)(u->pc + op->lval.sbyte)); 147 147 break; 148 148 case 16: 149 mkasm(u, "0x" FMT64 "x", ( u->pc + op->lval.sword ) & 0xffff);149 mkasm(u, "0x" FMT64 "x", (uint64_t)(( u->pc + op->lval.sword ) & 0xffff) ); 150 150 break; 151 151 case 32: 152 mkasm(u, "0x" FMT64 "x", ( u->pc + op->lval.sdword ) & 0xfffffffful);152 mkasm(u, "0x" FMT64 "x", (uint64_t)(( u->pc + op->lval.sdword ) & 0xfffffffful) ); 153 153 break; 154 154 default:break; -
trunk/Source/JavaScriptCore/disassembler/udis86/udis86_types.h
r120745 r161672 49 49 typedef __int64 int64_t; 50 50 #else 51 # define FMT64 "%ll" 51 # if defined(__GNU_LIBRARY__) && defined(__WORDSIZE) && (__WORDSIZE == 64) 52 # define FMT64 "%l" 53 # else 54 # define FMT64 "%ll" 55 # endif 52 56 # ifndef __UD_STANDALONE__ 53 57 # include <inttypes.h>
Note:
See TracChangeset
for help on using the changeset viewer.