aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs
diff options
context:
space:
mode:
authorDan Ravensloft <dan.ravensloft@gmail.com>2019-07-18 17:28:21 +0100
committerDan Ravensloft <dan.ravensloft@gmail.com>2019-07-18 17:28:21 +0100
commit50f5e29724bb6ea7f19279be7613ce693b7ea2da (patch)
tree054b461f90c72edb3d827f6b536ea0ff07855a55 /techlibs
parentd5b3b3bc6f9461fcdbad3dce849b4ab8988515db (diff)
downloadyosys-50f5e29724bb6ea7f19279be7613ce693b7ea2da.tar.gz
yosys-50f5e29724bb6ea7f19279be7613ce693b7ea2da.tar.bz2
yosys-50f5e29724bb6ea7f19279be7613ce693b7ea2da.zip
synth_intel: s/not family/no family/
Diffstat (limited to 'techlibs')
-rw-r--r--techlibs/intel/synth_intel.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/techlibs/intel/synth_intel.cc b/techlibs/intel/synth_intel.cc
index 0b44a835f..9a6df8c45 100644
--- a/techlibs/intel/synth_intel.cc
+++ b/techlibs/intel/synth_intel.cc
@@ -38,7 +38,7 @@ struct SynthIntelPass : public ScriptPass {
log("\n");
log(" -family < max10 | a10gx | cyclone10 | cyclonev | cycloneiv | cycloneive>\n");
log(" generate the synthesis netlist for the specified family.\n");
- log(" MAX10 is the default target if not family argument specified.\n");
+ log(" MAX10 is the default target if no family argument specified.\n");
log(" For Cyclone GX devices, use cycloneiv argument; For Cyclone E, use cycloneive.\n");
log(" Cyclone V and Arria 10 GX devices are experimental.\n");
log("\n");
@@ -153,7 +153,7 @@ struct SynthIntelPass : public ScriptPass {
family_opt != "cycloneiv" &&
family_opt != "cycloneive" &&
family_opt != "cyclone10")
- log_cmd_error("Invalid or not family specified: '%s'\n", family_opt.c_str());
+ log_cmd_error("Invalid or no family specified: '%s'\n", family_opt.c_str());
log_header(design, "Executing SYNTH_INTEL pass.\n");
log_push();
/ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
#ifndef __ARM_VFP_H_
#define __ARM_VFP_H_

#include <xen/types.h>


#ifdef CONFIG_ARM_32

#define FPEXC_EN (1u << 30)

/* Save and restore FP state.
 * Ought to be using the new vmrs/vmsr names, but older binutils has a
 * bug where it only allows them to target fpscr (and not, say, fpexc). */
#define READ_FP(reg) ({                                 \
    uint32_t val;                                       \
    asm volatile ("fmrx %0, fp" #reg : "=r" (val));     \
    val; })

#define WRITE_FP(reg, val) do {                         \
    asm volatile ("fmxr fp" #reg ", %0" : : "r" (val)); \
} while (0)

/* Start-of-day: Turn on VFP */
static inline void enable_vfp(void)
{
    WRITE_FP(exc, READ_FP(exc) | FPEXC_EN);
}
#else
static inline void enable_vfp(void)
{
    /* Always enable on 64-bit */
}
#endif

#endif
/*
 * Local variables:
 * mode: C
 * c-file-style: "BSD"
 * c-basic-offset: 4
 * indent-tabs-mode: nil
 * End:
 */