parent
bf83007e03
commit
8dff5fe57e
@ -0,0 +1,69 @@
|
||||
diff -up chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp.gcc12fix chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp
|
||||
--- chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp.gcc12fix 2022-02-25 22:17:18.071775686 +0000
|
||||
+++ chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.cpp 2022-02-25 22:17:40.964996468 +0000
|
||||
@@ -659,6 +659,7 @@ void emitIASOpTyGPR(const Cfg *Func, Typ
|
||||
}
|
||||
}
|
||||
|
||||
+#if 0
|
||||
template <bool VarCanBeByte, bool SrcCanBeByte>
|
||||
void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Var,
|
||||
const Operand *Src, const GPREmitterRegOp &Emitter) {
|
||||
@@ -697,6 +698,7 @@ void emitIASRegOpTyGPR(const Cfg *Func,
|
||||
llvm_unreachable("Unexpected operand type");
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
void emitIASAddrOpTyGPR(const Cfg *Func, Type Ty, const AsmAddress &Addr,
|
||||
const Operand *Src, const GPREmitterAddrOp &Emitter) {
|
||||
diff -up chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h.gcc12fix chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h
|
||||
--- chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h.gcc12fix 2022-02-25 22:17:51.409640955 +0000
|
||||
+++ chromium-98.0.4758.102/third_party/swiftshader/third_party/subzero/src/IceInstX8664.h 2022-02-25 22:19:13.478847553 +0000
|
||||
@@ -576,8 +576,44 @@ void emitIASXmmShift(const Cfg *Func, Ty
|
||||
/// Emit a two-operand (GPR) instruction, where the dest operand is a Variable
|
||||
/// that's guaranteed to be a register.
|
||||
template <bool VarCanBeByte = true, bool SrcCanBeByte = true>
|
||||
-void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Dst,
|
||||
- const Operand *Src, const GPREmitterRegOp &Emitter);
|
||||
+
|
||||
+void emitIASRegOpTyGPR(const Cfg *Func, Type Ty, const Variable *Var,
|
||||
+ const Operand *Src, const GPREmitterRegOp &Emitter) {
|
||||
+ auto *Target = InstX86Base::getTarget(Func);
|
||||
+ Assembler *Asm = Func->getAssembler<Assembler>();
|
||||
+ assert(Var->hasReg());
|
||||
+ // We cheat a little and use GPRRegister even for byte operations.
|
||||
+ GPRRegister VarReg = VarCanBeByte ? RegX8664::getEncodedGPR(Var->getRegNum())
|
||||
+ : RegX8664::getEncodedGPR(Var->getRegNum());
|
||||
+ if (const auto *SrcVar = llvm::dyn_cast<Variable>(Src)) {
|
||||
+ if (SrcVar->hasReg()) {
|
||||
+ GPRRegister SrcReg = SrcCanBeByte
|
||||
+ ? RegX8664::getEncodedGPR(SrcVar->getRegNum())
|
||||
+ : RegX8664::getEncodedGPR(SrcVar->getRegNum());
|
||||
+ (Asm->*(Emitter.GPRGPR))(Ty, VarReg, SrcReg);
|
||||
+ } else {
|
||||
+ AsmAddress SrcStackAddr = AsmAddress(SrcVar, Target);
|
||||
+ (Asm->*(Emitter.GPRAddr))(Ty, VarReg, SrcStackAddr);
|
||||
+ }
|
||||
+ } else if (const auto *Mem = llvm::dyn_cast<X86OperandMem>(Src)) {
|
||||
+ Mem->emitSegmentOverride(Asm);
|
||||
+ (Asm->*(Emitter.GPRAddr))(Ty, VarReg, AsmAddress(Mem, Asm, Target));
|
||||
+ } else if (const auto *Imm = llvm::dyn_cast<ConstantInteger32>(Src)) {
|
||||
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Imm->getValue()));
|
||||
+ } else if (const auto *Imm = llvm::dyn_cast<ConstantInteger64>(Src)) {
|
||||
+ assert(Utils::IsInt(32, Imm->getValue()));
|
||||
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Imm->getValue()));
|
||||
+ } else if (const auto *Reloc = llvm::dyn_cast<ConstantRelocatable>(Src)) {
|
||||
+ const auto FixupKind = (Reloc->getName().hasStdString() &&
|
||||
+ Reloc->getName().toString() == GlobalOffsetTable)
|
||||
+ ? FK_GotPC
|
||||
+ : FK_Abs;
|
||||
+ AssemblerFixup *Fixup = Asm->createFixup(FixupKind, Reloc);
|
||||
+ (Asm->*(Emitter.GPRImm))(Ty, VarReg, AssemblerImmediate(Fixup));
|
||||
+ } else {
|
||||
+ llvm_unreachable("Unexpected operand type");
|
||||
+ }
|
||||
+}
|
||||
|
||||
/// Instructions of the form x := op(x).
|
||||
template <typename InstX86Base::InstKindX86 K>
|
@ -0,0 +1,20 @@
|
||||
diff -up chromium-98.0.4758.102/remoting/BUILD.gn.remoting-no-tests chromium-98.0.4758.102/remoting/BUILD.gn
|
||||
--- chromium-98.0.4758.102/remoting/BUILD.gn.remoting-no-tests 2022-02-28 19:15:23.835872267 +0000
|
||||
+++ chromium-98.0.4758.102/remoting/BUILD.gn 2022-03-01 17:55:50.625536957 +0000
|
||||
@@ -8,7 +8,7 @@ import("//remoting/build/config/remoting
|
||||
group("remoting_all") {
|
||||
testonly = true
|
||||
|
||||
- deps = [ ":remoting_unittests" ]
|
||||
+ deps = [ ]
|
||||
|
||||
if (is_win) {
|
||||
deps += [
|
||||
@@ -37,7 +37,6 @@ group("remoting_all") {
|
||||
|
||||
if (enable_remoting_host) {
|
||||
deps += [
|
||||
- ":remoting_perftests",
|
||||
"//remoting/host",
|
||||
]
|
||||
|
Loading…
Reference in new issue