| OLD | NEW |
| 1 -- Copyright 2011 the V8 project authors. All rights reserved. | 1 -- Copyright 2011 the V8 project authors. All rights reserved. |
| 2 -- Redistribution and use in source and binary forms, with or without | 2 -- Redistribution and use in source and binary forms, with or without |
| 3 -- modification, are permitted provided that the following conditions are | 3 -- modification, are permitted provided that the following conditions are |
| 4 -- met: | 4 -- met: |
| 5 -- | 5 -- |
| 6 -- * Redistributions of source code must retain the above copyright | 6 -- * Redistributions of source code must retain the above copyright |
| 7 -- notice, this list of conditions and the following disclaimer. | 7 -- notice, this list of conditions and the following disclaimer. |
| 8 -- * Redistributions in binary form must reproduce the above | 8 -- * Redistributions in binary form must reproduce the above |
| 9 -- copyright notice, this list of conditions and the following | 9 -- copyright notice, this list of conditions and the following |
| 10 -- disclaimer in the documentation and/or other materials provided | 10 -- disclaimer in the documentation and/or other materials provided |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 .. " -D" .. arch_define | 99 .. " -D" .. arch_define |
| 100 .. " -DENABLE_DEBUGGER_SUPPORT" | 100 .. " -DENABLE_DEBUGGER_SUPPORT" |
| 101 .. " -Isrc" | 101 .. " -Isrc" |
| 102 end | 102 end |
| 103 | 103 |
| 104 function InvokeClangPluginForEachFile(filenames, cfg, func) | 104 function InvokeClangPluginForEachFile(filenames, cfg, func) |
| 105 local cmd_line = MakeClangCommandLine(cfg.plugin, | 105 local cmd_line = MakeClangCommandLine(cfg.plugin, |
| 106 cfg.plugin_args, | 106 cfg.plugin_args, |
| 107 cfg.triple, | 107 cfg.triple, |
| 108 cfg.arch_define) | 108 cfg.arch_define) |
| 109 | |
| 110 for _, filename in ipairs(filenames) do | 109 for _, filename in ipairs(filenames) do |
| 111 log("-- %s", filename) | 110 log("-- %s", filename) |
| 112 local action = cmd_line .. " src/" .. filename .. " 2>&1" | 111 local action = cmd_line .. " src/" .. filename .. " 2>&1" |
| 113 if FLAGS.verbose then print('popen ', action) end | 112 if FLAGS.verbose then print('popen ', action) end |
| 114 local pipe = io.popen(action) | 113 local pipe = io.popen(action) |
| 115 func(filename, pipe:lines()) | 114 func(filename, pipe:lines()) |
| 116 pipe:close() | 115 pipe:close() |
| 117 end | 116 end |
| 118 end | 117 end |
| 119 | 118 |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 211 | 210 |
| 212 -- DirectCEntryStub is a special stub used on ARM. | 211 -- DirectCEntryStub is a special stub used on ARM. |
| 213 -- It is pinned and always present. | 212 -- It is pinned and always present. |
| 214 "DirectCEntryStub.*GenerateCall", | 213 "DirectCEntryStub.*GenerateCall", |
| 215 | 214 |
| 216 -- TODO GCMole currently is sensitive enough to understand that certain | 215 -- TODO GCMole currently is sensitive enough to understand that certain |
| 217 -- functions only cause GC and return Failure simulataneously. | 216 -- functions only cause GC and return Failure simulataneously. |
| 218 -- Callsites of such functions are safe as long as they are properly | 217 -- Callsites of such functions are safe as long as they are properly |
| 219 -- check return value and propagate the Failure to the caller. | 218 -- check return value and propagate the Failure to the caller. |
| 220 -- It should be possible to extend GCMole to understand this. | 219 -- It should be possible to extend GCMole to understand this. |
| 221 "Heap.*AllocateFunctionPrototype" | 220 "Heap.*AllocateFunctionPrototype", |
| 221 |
| 222 -- Ignore all StateTag methods. |
| 223 "StateTag", |
| 224 |
| 225 -- Ignore printing of elements transition. |
| 226 "PrintElementsTransition" |
| 222 }; | 227 }; |
| 223 | 228 |
| 224 local function AddCause(name, cause) | 229 local function AddCause(name, cause) |
| 225 local t = gc_caused[name] | 230 local t = gc_caused[name] |
| 226 if not t then | 231 if not t then |
| 227 t = {} | 232 t = {} |
| 228 gc_caused[name] = t | 233 gc_caused[name] = t |
| 229 end | 234 end |
| 230 table.insert(t, cause) | 235 table.insert(t, cause) |
| 231 end | 236 end |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 367 | 372 |
| 368 for _, arch in ipairs(ARCHS) do | 373 for _, arch in ipairs(ARCHS) do |
| 369 if not ARCHITECTURES[arch] then | 374 if not ARCHITECTURES[arch] then |
| 370 error ("Unknown arch: " .. arch) | 375 error ("Unknown arch: " .. arch) |
| 371 end | 376 end |
| 372 | 377 |
| 373 errors = SafeCheckCorrectnessForArch(arch, report) or errors | 378 errors = SafeCheckCorrectnessForArch(arch, report) or errors |
| 374 end | 379 end |
| 375 | 380 |
| 376 os.exit(errors and 1 or 0) | 381 os.exit(errors and 1 or 0) |
| OLD | NEW |