Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Side by Side Diff: tools/testing/dart/compiler_configuration.dart

Issue 1922163002: Initial support to test.dart for running precompiler tests on android devices (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library compiler_configuration; 5 library compiler_configuration;
6 6
7 import 'dart:io' show Platform; 7 import 'dart:io' show Platform;
8 8
9 import 'runtime_configuration.dart' show RuntimeConfiguration; 9 import 'runtime_configuration.dart' show RuntimeConfiguration;
10 10
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 String buildDir, 338 String buildDir,
339 CommandBuilder commandBuilder, 339 CommandBuilder commandBuilder,
340 List arguments, 340 List arguments,
341 Map<String, String> environmentOverrides) { 341 Map<String, String> environmentOverrides) {
342 var exec = "$buildDir/dart_bootstrap"; 342 var exec = "$buildDir/dart_bootstrap";
343 var args = new List(); 343 var args = new List();
344 args.add("--gen-precompiled-snapshot=$tempDir"); 344 args.add("--gen-precompiled-snapshot=$tempDir");
345 if (useBlobs) { 345 if (useBlobs) {
346 args.add("--use_blobs"); 346 args.add("--use_blobs");
347 } 347 }
348 args.addAll(arguments); 348 args.addAll(arguments);
rmacnak 2016/04/26 17:18:07 if (targeting 32 bit ARM Android) { args.add("--
kustermann 2016/04/27 10:36:00 Good catch, thanks.
349 349
350 return commandBuilder.getCompilationCommand('precompiler', tempDir, !useSdk, 350 return commandBuilder.getCompilationCommand('precompiler', tempDir, !useSdk,
351 bootstrapDependencies(buildDir), exec, args, environmentOverrides); 351 bootstrapDependencies(buildDir), exec, args, environmentOverrides);
352 } 352 }
353 353
354 CompilationCommand computeAssembleCommand( 354 CompilationCommand computeAssembleCommand(
355 String tempDir, 355 String tempDir,
356 String buildDir, 356 String buildDir,
357 CommandBuilder commandBuilder, 357 CommandBuilder commandBuilder,
358 List arguments, 358 List arguments,
359 Map<String, String> environmentOverrides) { 359 Map<String, String> environmentOverrides) {
360 var cc, cc_flags, shared, libname; 360 var cc, cc_flags, shared, libname;
361 if (Platform.isLinux) { 361 if (Platform.isLinux) {
362 cc = 'gcc'; 362 cc = 'gcc';
363 shared = '-shared'; 363 shared = '-shared';
364 libname = 'libprecompiled.so'; 364 libname = 'libprecompiled.so';
365 } else if (Platform.isMacOS) { 365 } else if (Platform.isMacOS) {
366 cc = 'clang'; 366 cc = 'clang';
367 shared = '-dynamiclib'; 367 shared = '-dynamiclib';
368 libname = 'libprecompiled.dylib'; 368 libname = 'libprecompiled.dylib';
369 } else { 369 } else {
370 throw "Platform not supported: ${Platform.operatingSystem}"; 370 throw "Platform not supported: ${Platform.operatingSystem}";
371 } 371 }
372 372
373 if (arch == 'x64') { 373 if (arch == 'x64') {
374 cc_flags = "-m64"; 374 cc_flags = "-m64";
375 } else if (arch == 'simarm64') { 375 } else if (arch == 'simarm64') {
376 cc_flags = "-m64"; 376 cc_flags = "-m64";
377 } else if (arch == 'ia32') {
378 cc_flags = "-m32";
377 } else if (arch == 'simarm') { 379 } else if (arch == 'simarm') {
378 cc_flags = "-m32"; 380 cc_flags = "-m32";
379 } else if (arch == 'simmips') { 381 } else if (arch == 'simmips') {
380 cc_flags = "-m32"; 382 cc_flags = "-m32";
381 } else if (arch == 'arm') { 383 } else if (arch == 'arm') {
384 // TODO: If we're not using "--use_blobs" we need to use the arm cross
385 // compiler instead of just 'gcc'.
382 cc_flags = ""; 386 cc_flags = "";
383 } else if (arch == 'mips') { 387 } else if (arch == 'mips') {
384 cc_flags = "-EL"; 388 cc_flags = "-EL";
385 } else { 389 } else {
386 throw "Architecture not supported: $arch"; 390 throw "Architecture not supported: $arch";
387 } 391 }
388 392
389 var exec = cc; 393 var exec = cc;
390 var args = [ 394 var args = [ shared ];
391 shared, 395 if (cc_flags != null && cc_flags.length > 0) args.add(cc_flags);
392 cc_flags, 396 args.addAll([
393 '-o', 397 '-o',
394 '$tempDir/$libname', 398 '$tempDir/$libname',
395 '$tempDir/precompiled.S' 399 '$tempDir/precompiled.S'
396 ]; 400 ]);
397 401
398 return commandBuilder.getCompilationCommand('assemble', tempDir, !useSdk, 402 return commandBuilder.getCompilationCommand('assemble', tempDir, !useSdk,
399 bootstrapDependencies(buildDir), exec, args, environmentOverrides); 403 bootstrapDependencies(buildDir), exec, args, environmentOverrides);
400 } 404 }
401 405
402 // This step reduces the amount of space needed to run the precompilation 406 // This step reduces the amount of space needed to run the precompilation
403 // tests by 60%. 407 // tests by 60%.
404 CompilationCommand computeRemoveAssemblyCommand( 408 CompilationCommand computeRemoveAssemblyCommand(
405 String tempDir, 409 String tempDir,
406 String buildDir, 410 String buildDir,
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
598 RuntimeConfiguration runtimeConfiguration, 602 RuntimeConfiguration runtimeConfiguration,
599 String buildDir, 603 String buildDir,
600 TestInformation info, 604 TestInformation info,
601 List<String> vmOptions, 605 List<String> vmOptions,
602 List<String> sharedOptions, 606 List<String> sharedOptions,
603 List<String> originalArguments, 607 List<String> originalArguments,
604 CommandArtifact artifact) { 608 CommandArtifact artifact) {
605 return <String>[]; 609 return <String>[];
606 } 610 }
607 } 611 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698