Mercurial > hg > graal-jvmci-8
comparison src/cpu/x86/vm/x86_32.ad @ 6614:006050192a5a
6340864: Implement vectorization optimizations in hotspot-server
Summary: Added asm encoding and mach nodes for vector arithmetic instructions on x86.
Reviewed-by: roland
author | kvn |
---|---|
date | Mon, 20 Aug 2012 09:07:21 -0700 |
parents | 8c92982cbbc4 |
children | da91efe96a93 |
comparison
equal
deleted
inserted
replaced
6594:d5ec46c7da5c | 6614:006050192a5a |
---|---|
1365 assert(__ offset() - offset <= (int) size_deopt_handler(), "overflow"); | 1365 assert(__ offset() - offset <= (int) size_deopt_handler(), "overflow"); |
1366 __ end_a_stub(); | 1366 __ end_a_stub(); |
1367 return offset; | 1367 return offset; |
1368 } | 1368 } |
1369 | 1369 |
1370 | |
1371 const bool Matcher::match_rule_supported(int opcode) { | |
1372 if (!has_match_rule(opcode)) | |
1373 return false; | |
1374 | |
1375 switch (opcode) { | |
1376 case Op_PopCountI: | |
1377 case Op_PopCountL: | |
1378 if (!UsePopCountInstruction) | |
1379 return false; | |
1380 break; | |
1381 } | |
1382 | |
1383 return true; // Per default match rules are supported. | |
1384 } | |
1385 | |
1386 int Matcher::regnum_to_fpu_offset(int regnum) { | 1370 int Matcher::regnum_to_fpu_offset(int regnum) { |
1387 return regnum - 32; // The FP registers are in the second chunk | 1371 return regnum - 32; // The FP registers are in the second chunk |
1388 } | 1372 } |
1389 | 1373 |
1390 // This is UltraSparc specific, true just means we have fast l2f conversion | 1374 // This is UltraSparc specific, true just means we have fast l2f conversion |