Go to file
Thomas Petazzoni bdadcf593d kvm-unit-tests: fix build on x86-64 with specific gcc versions
kvm-unit-tests uses the following code on x86/x86-64:

static inline u64 scale_delta(u64 delta, u64 mul_frac)
{
        u64 product, unused;

        __asm__ (
                "mul %3"
                : "=d" (product), "=a" (unused) : "1" (delta), "rm" ((u64)mul_frac) );

        return product;
}

The "mul" instruction does not have a suffix that indicates the width of
the data being multiplied. When the data is passed in a register, there
is no need to specify the width, but with some gcc versions, the data is
passed as a memory reference, and therefore the assembler does not know
the width of the data to be multiplied. It causes the following build
failure:

x86/hyperv_clock.c: Assembler messages:
x86/hyperv_clock.c:21: Error: no instruction mnemonic suffix given and no register operands; can't size instruction

Since the data being multiplied is 64 bit, we explicitly specify the
instruction as being "mulq".

Fixes:

  http://autobuild.buildroot.net/results/a4a65d01f049db83a93de92660f228dd18532625/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-05-11 22:13:19 +02:00
arch arch, linux, package: remove whitespaces 2017-03-29 23:30:37 +02:00
board board/stmicroelectronics/stm32f469-disco: remove OpenOCD patches 2017-05-07 13:56:00 +02:00
boot uboot: fix target uboot defconfig warning 2017-04-22 15:05:50 +02:00
configs configs/armadeus_apf9328_defconfig: remove RPC option 2017-05-07 14:11:16 +02:00
docs Update for 2017.05-rc1 2017-05-08 12:21:32 +02:00
fs ext2: add help text for BR2_TARGET_ROOTFS_EXT2_BLOCKS 2017-05-04 17:15:13 +02:00
linux linux: bump default to version 4.11 2017-05-01 10:45:35 +02:00
package kvm-unit-tests: fix build on x86-64 with specific gcc versions 2017-05-11 22:13:19 +02:00
support support/testing: remove unused variable 2017-05-10 23:42:27 +02:00
system system: do not overwrite /bin/sh Busybox symlink 2017-03-29 23:28:58 +02:00
toolchain Revert "toolchain-external: CodeSourcery NiosII 2015.11 affected by PR19405" 2017-05-07 22:09:17 +02:00
.defconfig arch: remove support for sh64 2016-09-08 22:15:15 +02:00
.gitignore
.gitlab-ci.yml .gitlab-ci.yml: sync with latest defconfig additions 2017-05-07 13:42:12 +02:00
.gitlab-ci.yml.in gitlab-ci: add gcc-multilib to the docker image 2017-03-10 14:22:25 +01:00
CHANGES CHANGES: Update for 2017.05-rc1 2017-05-08 12:21:23 +02:00
Config.in package: add generic support for lz archives 2017-02-15 22:11:11 +01:00
Config.in.legacy package/sunxi-mali: remove sunxi-mali libMali for r2p4 Mali kernel modules 2017-05-07 16:14:29 +02:00
COPYING
DEVELOPERS DEVELOPERS: add a number of packages to Matt Weber 2017-05-10 23:32:18 +02:00
Makefile Update for 2017.05-rc1 2017-05-08 12:21:32 +02:00
Makefile.legacy Remove BR2_DEPRECATED 2016-10-15 23:14:45 +02:00
README

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches