summaryrefslogtreecommitdiff
path: root/src/support
Commit message (Collapse)AuthorAgeFilesLines
* Add missing algorithm and string headersJF Bastien2016-04-231-0/+2
| | | As in #382.
* Merge pull request #377 from WebAssembly/zero_x_bAlon Zakai2016-04-211-1/+1
|\ | | | | More 0xb work
| * fix file size for binary files readAlon Zakai2016-04-211-1/+1
| |
* | Move wasm-linker into its own cpp file (#375)Derek Schuff2016-04-211-0/+4
|/ | | | | | | Still making things nicer for #370 Pulling wasm-linker into its own file also necessitated pulling asm_v_wasm.h into a cpp file. It goes into a new lib directory, src/asmjs. No actual code changes in this PR.
* Move Fatal into utilities.h (#376)Derek Schuff2016-04-211-0/+18
| | | | | Follow-on from #372. Probably we should do even better for error handling, and that might mean a cpp file in support, but for now this is a small improvement.
* Factor linker-related functionality of S2WasmBuilder into its own class (#372)Derek Schuff2016-04-211-0/+6
| | | | | This is the first of a couple of refactorings in for #370 No functionality change, and minimal code change to make it work.
* fix ThreadPool::size, we don't have any thread objects created if there is ↵Alon Zakai2016-04-181-1/+1
| | | | just one core, since then we run it all on the main thread anyhow
* allow limiting # of cores in thread pool, useful for debuggingAlon Zakai2016-04-181-0/+3
|
* Function parallelism (#343)Alon Zakai2016-04-152-0/+288
| | | | * allow traversals to mark themselves as function-parallel, in which case we run them using a thread pool. also mark some thread-safety risks (interned strings, arena allocators) with assertions they modify only on the main thread
* Properly align the stack pointerDerek Schuff2016-04-061-0/+13
| | | | | | | | | | | | * Properly align the stack pointer By default (if no global base is given) the global base is 1, which seems wrong. In this case the stack pointer gets an address of 1, which is unaligned and definitely wrong. So, start the global base at 0 instead of 1 by default and align the stack pointer. Also factor allocation of statics into a function. * unconditionally allocate stack pointer; explicitly reserve address 0
* refactor file flags into enumsAlon Zakai2016-03-312-12/+24
|
* set the binary bit on files we need to open in binary modeAlon Zakai2016-03-312-11/+16
|
* Repair broken file-size checkpjuftring2016-03-311-1/+1
|
* streampos may be signed on some platformsAlon Zakai2016-03-281-2/+2
|
* Merge branch 'vs2015_fixes' of https://github.com/juj/binaryen into vs2015_fixesAlon Zakai2016-03-281-2/+8
|\ | | | | | | | | Conflicts: src/support/safe_integer.cpp
| * Use std::numeric_limits<uint32_t>::max() instead of 0xFFFFFFFF.Jukka Jylänki2016-03-281-2/+3
| |
| * Also clean up Visual Studio build warning in wasm::toSInteger32 for ↵Jukka Jylänki2016-03-281-1/+1
| | | | | | | | double->int32_t cast.
| * Clean up build warning C4244: 'return': conversion from 'double' to ↵Jukka Jylänki2016-03-281-1/+1
| | | | | | | | 'uint32_t', possible loss of data in src\support\safe_integer.cpp(40).
| * Fix wasm::read_file() to abort if input file is too big to read in when ↵Jukka Jylänki2016-03-281-2/+7
| | | | | | | | building a 32-bit executable and size_t is not 64-bit.
* | Tighten safe integerJF Bastien2016-03-281-16/+18
| | | | | | | | #282 removed the assert, but the code didn't handle negative -> unsigned conversion properly, and doesn't behave well with -0.0. I'm not super comfortable with 64-bit int min / max to double conversions either, but that'll be for another patch.
* | remove bogus asserts from safe_integer castsAlon Zakai2016-03-281-4/+0
|/
* make --debug workAlon Zakai2016-03-211-1/+1
|
* Make --debug a booleanJF Bastien2016-03-182-6/+4
| | | | As discussed in #248.
* add Log2 and Pow2 support methodsAlon Zakai2016-03-162-0/+27
|
* Move rol/ror to src/support/bits.hDerek Schuff2016-03-091-0/+15
|
* move printing to a passAlon Zakai2016-02-171-0/+4
|
* De-inline signed wrapper templates for bit manipulation functionsDerek Schuff2016-02-031-3/+3
| | | | This fixes the clang build.
* fix gcc 4.8.2 breakage due to 66da1ee9cc70e3848c45745c21a244e54512fa9cAlon Zakai2016-02-031-9/+13
|
* Move bits.h to support/JF Bastien2016-02-032-0/+168
| | | | Faster compiles.
* Factor out bit_cast.JF Bastien2016-01-281-0/+40
|
* Fix colors on OSX.Michael2016-01-261-1/+1
| | | | Apple OSes define __APPLE__ instead of the lower case __apple__.
* Fix command-line help when there's only long or shortJF Bastien2016-01-201-2/+4
|
* Merge pull request #93 from WebAssembly/asm2wasm-use-command-lineAlon Zakai2016-01-114-13/+34
|\ | | | | asm2wasm: use support's command-line
| * asm2wasm: use support's command-lineJF Bastien2016-01-114-13/+34
| |
* | Safe integer: assert before converting double to integer.JF Bastien2016-01-101-0/+5
| |
* | Add Travis builds with sanitizersJF Bastien2016-01-102-0/+104
|/ | | | | | | | | | | | | | | | This triggers 5 independent build / test runs: - clang, no sanitizer; - clang, UB sanitizer; - clang, address sanitizer (disabled for now); - clang, thread sanitizer (disabled for now); - GCC. Enabling UBSan led to these changes: - Fix a bunch of undefined behavior throughout the code base. - Fix some tests that relied on that undefined behavior. - Make some of the tests easier to debug by printing their command line. - Add ubsan blacklist to work around libstdc++ bug. - Example testcase also needs sanitizer because libsupport.a uses it.
* Merge pull request #64 from WebAssembly/color-disableAlon Zakai2016-01-042-4/+9
|\ | | | | Disable colors when outputting to a file
| * Disable colors when outputting to a fileJF Bastien2016-01-042-4/+9
| | | | | | | | This will allow other tools to consume the output.
* | Move file input / output to support.JF Bastien2016-01-042-0/+102
|/
* Fix off-by-one in option parsing with '='.JF Bastien2016-01-041-1/+1
|
* Add curlies.JF Bastien2016-01-041-2/+4
|
* Generalize command-line parsing more.JF Bastien2016-01-022-48/+148
| | | | This should allow other programs to use the same command-line support.
* Merge pull request #55 from WebAssembly/support-command-lineAlon Zakai2015-12-302-0/+108
|\ | | | | Start moving command-line processing to libsupport.a
| * Add a help to avoid out-of-bounds.JF Bastien2015-12-291-1/+4
| |
| * Fix include guards.JF Bastien2015-12-291-3/+3
| |
| * Start moving command-line processing to libsupport.aJF Bastien2015-12-292-0/+105
| | | | | | | | This only moves things, no functional change yet.
* | Fix include guardsJF Bastien2015-12-291-3/+3
|/
* Add a support static libraryJF Bastien2015-12-242-0/+72
For now I've only moved the color check (and made it check the environment only once, note function local static initialization is thread-safe in C++11). This will make the builds slightly faster and allow us to move platform-specific code out of header files (reducing the amount of #include gunk). I'll eventually move other parts of the code to support, especially the command-line parsing (once it's reusable).