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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 if FLAGS[flag] ~= nil then | 59 if FLAGS[flag] ~= nil then |
60 FLAGS[flag] = (no ~= "no") | 60 FLAGS[flag] = (no ~= "no") |
61 else | 61 else |
62 error("Unknown flag: " .. flag) | 62 error("Unknown flag: " .. flag) |
63 end | 63 end |
64 else | 64 else |
65 table.insert(ARGS, arg[i]) | 65 table.insert(ARGS, arg[i]) |
66 end | 66 end |
67 end | 67 end |
68 | 68 |
69 local ARCHS = ARGS[1] and { ARGS[1] } or { 'ia32', 'arm', 'x64' } | 69 local ARCHS = ARGS[1] and { ARGS[1] } or { 'ia32', 'arm', 'x64', 'arm64' } |
70 | 70 |
71 local io = require "io" | 71 local io = require "io" |
72 local os = require "os" | 72 local os = require "os" |
73 | 73 |
74 function log(...) | 74 function log(...) |
75 io.stderr:write(string.format(...)) | 75 io.stderr:write(string.format(...)) |
76 io.stderr:write "\n" | 76 io.stderr:write "\n" |
77 end | 77 end |
78 | 78 |
79 ------------------------------------------------------------------------------- | 79 ------------------------------------------------------------------------------- |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 for k, v in pairs(t) do e[k] = v end | 189 for k, v in pairs(t) do e[k] = v end |
190 return config(e) | 190 return config(e) |
191 end | 191 end |
192 | 192 |
193 local ARCHITECTURES = { | 193 local ARCHITECTURES = { |
194 ia32 = config { triple = "i586-unknown-linux", | 194 ia32 = config { triple = "i586-unknown-linux", |
195 arch_define = "V8_TARGET_ARCH_IA32" }, | 195 arch_define = "V8_TARGET_ARCH_IA32" }, |
196 arm = config { triple = "i586-unknown-linux", | 196 arm = config { triple = "i586-unknown-linux", |
197 arch_define = "V8_TARGET_ARCH_ARM" }, | 197 arch_define = "V8_TARGET_ARCH_ARM" }, |
198 x64 = config { triple = "x86_64-unknown-linux", | 198 x64 = config { triple = "x86_64-unknown-linux", |
199 arch_define = "V8_TARGET_ARCH_X64" } | 199 arch_define = "V8_TARGET_ARCH_X64" }, |
| 200 arm64 = config { triple = "x86_64-unknown-linux", |
| 201 arch_define = "V8_TARGET_ARCH_ARM64" }, |
200 } | 202 } |
201 | 203 |
202 ------------------------------------------------------------------------------- | 204 ------------------------------------------------------------------------------- |
203 -- GCSuspects Generation | 205 -- GCSuspects Generation |
204 | 206 |
205 local gc, gc_caused, funcs | 207 local gc, gc_caused, funcs |
206 | 208 |
207 local WHITELIST = { | 209 local WHITELIST = { |
208 -- The following functions call CEntryStub which is always present. | 210 -- The following functions call CEntryStub which is always present. |
209 "MacroAssembler.*CallExternalReference", | 211 "MacroAssembler.*CallExternalReference", |
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
375 | 377 |
376 for _, arch in ipairs(ARCHS) do | 378 for _, arch in ipairs(ARCHS) do |
377 if not ARCHITECTURES[arch] then | 379 if not ARCHITECTURES[arch] then |
378 error ("Unknown arch: " .. arch) | 380 error ("Unknown arch: " .. arch) |
379 end | 381 end |
380 | 382 |
381 errors = SafeCheckCorrectnessForArch(arch, report) or errors | 383 errors = SafeCheckCorrectnessForArch(arch, report) or errors |
382 end | 384 end |
383 | 385 |
384 os.exit(errors and 1 or 0) | 386 os.exit(errors and 1 or 0) |
OLD | NEW |