diff options
author | Alon Zakai <azakai@mozilla.com> | 2010-12-13 20:35:45 -0800 |
---|---|---|
committer | Alon Zakai <azakai@mozilla.com> | 2010-12-13 20:35:45 -0800 |
commit | 8783a09b1d0a02a378406b9d879818a6c02a6358 (patch) | |
tree | a37ed35e94d7e5404e2fe90edaa82f30e80e42f4 /src | |
parent | 45c53b2520a326b8d870321a6f39ac17fbc297c9 (diff) |
minor fixes for python demo
Diffstat (limited to 'src')
-rw-r--r-- | src/library.js | 7 | ||||
-rw-r--r-- | src/preamble.js | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/library.js b/src/library.js index f894141e..0fb73611 100644 --- a/src/library.js +++ b/src/library.js @@ -315,6 +315,13 @@ var Library = { return 0; }, + strstr: function(ptr1, ptr2) { + var str1 = Pointer_stringify(ptr1); + var str2 = Pointer_stringify(ptr2); + var ret = str1.search(str2); + return ret >= 0 ? ptr1 + ret : 0; + }, + strchr: function(ptr, chr) { ptr--; do { diff --git a/src/preamble.js b/src/preamble.js index 844c0bba..ef29bf82 100644 --- a/src/preamble.js +++ b/src/preamble.js @@ -367,6 +367,15 @@ function _llvm_memcpy_i32(dest, src, num, idunno) { } _memcpy = _llvm_memcpy_i64 = _llvm_memcpy_p0i8_p0i8_i32 = _llvm_memcpy_p0i8_p0i8_i64 = _llvm_memcpy_i32; +function _llvm_memmove_i32(dest, src, num, idunno) { + // not optimized! + var tmp = _malloc(num); + _memcpy(tmp, src, num); + _memcpy(dest, tmp, num); + _free(tmp); +} +_memmove = _llvm_memmove_i64 = _llvm_memmove_p0i8_p0i8_i32 = _llvm_memmove_p0i8_p0i8_i64 = _llvm_memmove_i32; + function llvm_memset_i32(ptr, value, num) { for (var i = 0; i < num; i++) { #if USE_TYPED_ARRAYS |