xref: /freebsd/contrib/llvm-project/llvm/lib/Target/M68k/M68kSchedule.td (revision 924226fba12cc9a228c73b956e1b7fa24c60b055)
1//===-- M68kSchedule.td - M68k Scheduling Definitions ------*- tablegen -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8///
9/// \file
10/// This file contains M68k scheduler definitions.
11///
12//===----------------------------------------------------------------------===//
13
14/// This is a very general M68k Scheduling Model and best suited for the very
15/// first M68000 CPU, other model must override these characteristics
16class M68kSchedModel : SchedMachineModel {
17  let LoadLatency = 4;  // Word (Rn)
18  let HighLatency = 16; // Long ABS
19  let PostRAScheduler = 0;
20  let CompleteModel = 0;
21}
22
23def GenericM68kModel : M68kSchedModel;
24