• Home
  • Raw
  • Download

Lines Matching +full:- +full:ithird_party

1 -- Copyright 2011 the V8 project authors. All rights reserved.
2 -- Redistribution and use in source and binary forms, with or without
3 -- modification, are permitted provided that the following conditions are
4 -- met:
5 --
6 -- * Redistributions of source code must retain the above copyright
7 -- notice, this list of conditions and the following disclaimer.
8 -- * Redistributions in binary form must reproduce the above
9 -- copyright notice, this list of conditions and the following
10 -- disclaimer in the documentation and/or other materials provided
11 -- with the distribution.
12 -- * Neither the name of Google Inc. nor the names of its
13 -- contributors may be used to endorse or promote products derived
14 -- from this software without specific prior written permission.
15 --
16 -- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 -- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 -- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 -- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 -- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 -- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 -- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 -- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 -- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 -- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 -- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 -- This is main driver for gcmole tool. See README for more details.
29 -- Usage: CLANG_BIN=clang-bin-dir lua tools/gcmole/gcmole.lua [arm|ia32|x64]
34 -- Do not build gcsuspects file and reuse previously generated one.
37 -- Don't use parallel python runner.
40 -- Print commands to console before executing them.
43 -- Perform dead variable analysis (generates many false positives).
44 -- TODO add some sort of whiteliste to filter out false positives.
47 -- When building gcsuspects whitelist certain functions as if they
48 -- can be causing GC. Currently used to reduce number of false
49 -- positives in dead variables analysis. See TODO for WHITELIST
50 -- below.
56 local flag = arg[i]:match "^%-%-([%w_-]+)$"
58 local no, real_flag = flag:match "^(no)([%w_-]+)$"
61 flag = flag:gsub("%-", "_")
82 -------------------------------------------------------------------------------
83 -- Clang invocation
100 plugin_args[i] = "-Xclang -plugin-arg-" .. plugin
101 .. " -Xclang " .. plugin_args[i]
105 return CLANG_BIN .. "/clang++ -std=c++11 -c "
106 .. " -Xclang -load -Xclang " .. CLANG_PLUGINS .. "/libgcmole.so"
107 .. " -Xclang -plugin -Xclang " .. plugin
109 .. " -Xclang -triple -Xclang " .. triple
110 .. " -D" .. arch_define
111 .. " -DENABLE_DEBUGGER_SUPPORT"
112 .. " -DV8_INTL_SUPPORT"
113 .. " -I./"
114 .. " -Iinclude/"
115 .. " -Iout/Release/gen"
116 .. " -Ithird_party/icu/source/common"
117 .. " -Ithird_party/icu/source/i18n"
130 -- Splits the output of parallel.py and calls func on each result.
131 -- Bails out in case of an error in one of the executions.
143 log("-- %s", filename)
164 log("-- %s", filename)
184 -------------------------------------------------------------------------------
189 { "BUILD.gn", '"([^"]-%.cc)"', "" },
190 { "test/cctest/BUILD.gn", '"(test-[^"]-%.cc)"', "test/cctest/" }
200 gn:gmatch "### gcmole%((.-)%) ###(.-)%]" do
257 ia32 = config { triple = "i586-unknown-linux",
259 arch_options = "-m32" },
260 arm = config { triple = "i586-unknown-linux",
262 arch_options = "-m32" },
263 x64 = config { triple = "x86_64-unknown-linux",
266 arm64 = config { triple = "x86_64-unknown-linux",
271 -------------------------------------------------------------------------------
272 -- GCSuspects Generation
277 -- The following functions call CEntryStub which is always present.
282 -- DirectCEntryStub is a special stub used on ARM.
283 -- It is pinned and always present.
286 -- TODO GCMole currently is sensitive enough to understand that certain
287 -- functions only cause GC and return Failure simulataneously.
288 -- Callsites of such functions are safe as long as they are properly
289 -- check return value and propagate the Failure to the caller.
290 -- It should be possible to extend GCMole to understand this.
293 -- Ignore all StateTag methods.
296 -- Ignore printing of elements transition.
366 -- Reset the global state.
371 cfg:extend { plugin = "dump-callees" },
393 --------------------------------------------------------------------------------
394 -- Analysis
421 if FLAGS.dead_vars then plugin_args = { "--dead-vars" } end
423 cfg:extend { plugin = "find-problems",