machinst x64: implement float min/max with the right semantics;

This commit is contained in:
Benjamin Bouvier
2020-07-21 14:27:44 +02:00
parent e43310a088
commit 03b9e1e86a
4 changed files with 168 additions and 0 deletions

View File

@@ -337,6 +337,7 @@ pub enum SseOpcode {
Addss,
Addsd,
Andps,
Andpd,
Andnps,
Comiss,
Comisd,
@@ -365,6 +366,7 @@ pub enum SseOpcode {
Mulss,
Mulsd,
Orps,
Orpd,
Rcpss,
Roundss,
Roundsd,
@@ -404,6 +406,7 @@ impl SseOpcode {
| SseOpcode::Cmpss => SSE,
SseOpcode::Addsd
| SseOpcode::Andpd
| SseOpcode::Cvtsd2ss
| SseOpcode::Cvtsd2si
| SseOpcode::Cvtsi2sd
@@ -416,6 +419,7 @@ impl SseOpcode {
| SseOpcode::Movq
| SseOpcode::Movsd
| SseOpcode::Mulsd
| SseOpcode::Orpd
| SseOpcode::Sqrtsd
| SseOpcode::Subsd
| SseOpcode::Ucomisd
@@ -440,6 +444,7 @@ impl fmt::Debug for SseOpcode {
let name = match self {
SseOpcode::Addss => "addss",
SseOpcode::Addsd => "addsd",
SseOpcode::Andpd => "andpd",
SseOpcode::Andps => "andps",
SseOpcode::Andnps => "andnps",
SseOpcode::Comiss => "comiss",
@@ -465,6 +470,7 @@ impl fmt::Debug for SseOpcode {
SseOpcode::Movsd => "movsd",
SseOpcode::Mulss => "mulss",
SseOpcode::Mulsd => "mulsd",
SseOpcode::Orpd => "orpd",
SseOpcode::Orps => "orps",
SseOpcode::Rcpss => "rcpss",
SseOpcode::Roundss => "roundss",