Skip to content

Commit

Permalink
Merge pull request #6668 from jamesgua/dummy_bad_op
Browse files Browse the repository at this point in the history
Remove dummy opcode value setting in Instruction constructor
  • Loading branch information
knn-k authored Aug 22, 2022
2 parents 2e35494 + e259131 commit 063dc5d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 18 deletions.
15 changes: 5 additions & 10 deletions compiler/arm/codegen/OMRInstruction.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2000, 2021 IBM Corp. and others
* Copyright (c) 2000, 2022 IBM Corp. and others
*
* This program and the accompanying materials are made available under
* the terms of the Eclipse Public License 2.0 which accompanies this
Expand Down Expand Up @@ -80,15 +80,13 @@ OMR::ARM::Instruction::Instruction(TR::CodeGenerator *cg, TR::InstOpCode::Mnemon
OMR::ARM::Instruction::Instruction(TR::Node *node, TR::CodeGenerator *cg)
: OMR::InstructionConnector(cg, TR::InstOpCode::bad, node)
{
self()->setOpCodeValue(TR::InstOpCode::bad);
self()->setConditionCode(ARMConditionCodeAL);
self()->setDependencyConditions(NULL);
}

OMR::ARM::Instruction::Instruction(TR::InstOpCode::Mnemonic op, TR::Node *node, TR::CodeGenerator *cg)
: OMR::InstructionConnector(cg, TR::InstOpCode::bad, node)
: OMR::InstructionConnector(cg, op, node)
{
self()->setOpCodeValue(op);
self()->setConditionCode(ARMConditionCodeAL);
self()->setDependencyConditions(NULL);
}
Expand All @@ -97,9 +95,8 @@ OMR::ARM::Instruction::Instruction(TR::Instruction *precedingInstruction,
TR::InstOpCode::Mnemonic op,
TR::Node *node,
TR::CodeGenerator *cg)
: OMR::InstructionConnector(cg, precedingInstruction, TR::InstOpCode::bad, node)
: OMR::InstructionConnector(cg, precedingInstruction, op, node)
{
self()->setOpCodeValue(op);
self()->setConditionCode(ARMConditionCodeAL);
self()->setDependencyConditions(NULL);
}
Expand All @@ -108,9 +105,8 @@ OMR::ARM::Instruction::Instruction(TR::InstOpCode::Mnemonic
TR::Node *node,
TR::RegisterDependencyConditions *cond,
TR::CodeGenerator *cg)
: OMR::InstructionConnector(cg, TR::InstOpCode::bad, node)
: OMR::InstructionConnector(cg, op, node)
{
self()->setOpCodeValue(op);
self()->setConditionCode(ARMConditionCodeAL);
self()->setDependencyConditions(cond);
if (cond)
Expand All @@ -122,9 +118,8 @@ OMR::ARM::Instruction::Instruction(TR::Instruction *precedin
TR::Node *node,
TR::RegisterDependencyConditions *cond,
TR::CodeGenerator *cg)
: OMR::InstructionConnector(cg, precedingInstruction, TR::InstOpCode::bad, node)
: OMR::InstructionConnector(cg, precedingInstruction, op, node)
{
self()->setOpCodeValue(op);
self()->setConditionCode(ARMConditionCodeAL);
self()->setDependencyConditions(cond);
if (cond)
Expand Down
12 changes: 4 additions & 8 deletions compiler/x/codegen/Instruction.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,34 +56,30 @@ class OMR_EXTENSIBLE Instruction : public OMR::InstructionConnector
#include "codegen/OMRInstruction_inlines.hpp"

TR::Instruction::Instruction(TR::Node *node, TR::InstOpCode::Mnemonic op, TR::CodeGenerator *cg, OMR::X86::Encoding encoding) :
OMR::InstructionConnector(cg, TR::InstOpCode::bad, node)
OMR::InstructionConnector(cg, op, node)
{
self()->setOpCodeValue(op);
self()->setEncodingMethod(encoding);
self()->initialize();
}

TR::Instruction::Instruction(TR::InstOpCode::Mnemonic op, TR::Instruction *precedingInstruction, TR::CodeGenerator *cg, OMR::X86::Encoding encoding) :
OMR::InstructionConnector(cg, precedingInstruction, TR::InstOpCode::bad)
OMR::InstructionConnector(cg, precedingInstruction, op)
{
self()->setOpCodeValue(op);
self()->setEncodingMethod(encoding);
self()->initialize();
}

TR::Instruction::Instruction(TR::RegisterDependencyConditions *cond, TR::Node *node, TR::InstOpCode::Mnemonic op, TR::CodeGenerator *cg, OMR::X86::Encoding encoding) :
OMR::InstructionConnector(cg, TR::InstOpCode::bad, node)
OMR::InstructionConnector(cg, op, node)
{
self()->setOpCodeValue(op);
self()->setDependencyConditions(cond);
self()->setEncodingMethod(encoding);
self()->initialize(cg, cond, op, true);
}

TR::Instruction::Instruction(TR::RegisterDependencyConditions *cond, TR::InstOpCode::Mnemonic op, TR::Instruction *precedingInstruction, TR::CodeGenerator *cg, OMR::X86::Encoding encoding) :
OMR::InstructionConnector(cg, precedingInstruction, TR::InstOpCode::bad)
OMR::InstructionConnector(cg, precedingInstruction, op)
{
self()->setOpCodeValue(op);
self()->setDependencyConditions(cond);
self()->setEncodingMethod(encoding);
self()->initialize(cg, cond, op);
Expand Down

0 comments on commit 063dc5d

Please sign in to comment.