~ubuntu-branches/ubuntu/vivid/qemu/vivid

« back to all changes in this revision

Viewing changes to disas/libvixl/globals.h

  • Committer: Package Import Robot
  • Author(s): dann frazier
  • Date: 2014-02-11 15:41:53 UTC
  • Revision ID: package-import@ubuntu.com-20140211154153-2d001tf0ium08u81
Tags: 1.7.0+dfsg-3ubuntu2
* Backport changes to enable qemu-user-static support for aarch64
* debian/control: add ppc64el to Architectures
* debian/rules: only install qemu-system-aarch64 on arm64.
  Fixes a FTBFS  when built twice in a row on non-arm64 due to a stale
  debian/qemu-system-aarch64 directory

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright 2013, ARM Limited
 
2
// All rights reserved.
 
3
//
 
4
// Redistribution and use in source and binary forms, with or without
 
5
// modification, are permitted provided that the following conditions are met:
 
6
//
 
7
//   * Redistributions of source code must retain the above copyright notice,
 
8
//     this list of conditions and the following disclaimer.
 
9
//   * Redistributions in binary form must reproduce the above copyright notice,
 
10
//     this list of conditions and the following disclaimer in the documentation
 
11
//     and/or other materials provided with the distribution.
 
12
//   * Neither the name of ARM Limited nor the names of its contributors may be
 
13
//     used to endorse or promote products derived from this software without
 
14
//     specific prior written permission.
 
15
//
 
16
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS CONTRIBUTORS "AS IS" AND
 
17
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 
18
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 
19
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
 
20
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 
21
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 
22
// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
 
23
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 
24
// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 
25
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
26
 
 
27
#ifndef VIXL_GLOBALS_H
 
28
#define VIXL_GLOBALS_H
 
29
 
 
30
// Get the standard printf format macros for C99 stdint types.
 
31
#define __STDC_FORMAT_MACROS
 
32
#include <inttypes.h>
 
33
 
 
34
#include <assert.h>
 
35
#include <stdarg.h>
 
36
#include <stdio.h>
 
37
#include <stdint.h>
 
38
#include <stdlib.h>
 
39
#include <stddef.h>
 
40
#include "platform.h"
 
41
 
 
42
 
 
43
typedef uint8_t byte;
 
44
 
 
45
const int KBytes = 1024;
 
46
const int MBytes = 1024 * KBytes;
 
47
 
 
48
  #define ABORT() printf("in %s, line %i", __FILE__, __LINE__); abort()
 
49
#ifdef DEBUG
 
50
  #define ASSERT(condition) assert(condition)
 
51
  #define CHECK(condition) ASSERT(condition)
 
52
  #define UNIMPLEMENTED() printf("UNIMPLEMENTED\t"); ABORT()
 
53
  #define UNREACHABLE() printf("UNREACHABLE\t"); ABORT()
 
54
#else
 
55
  #define ASSERT(condition) ((void) 0)
 
56
  #define CHECK(condition) assert(condition)
 
57
  #define UNIMPLEMENTED() ((void) 0)
 
58
  #define UNREACHABLE() ((void) 0)
 
59
#endif
 
60
 
 
61
template <typename T> inline void USE(T) {}
 
62
 
 
63
#define ALIGNMENT_EXCEPTION() printf("ALIGNMENT EXCEPTION\t"); ABORT()
 
64
 
 
65
#endif  // VIXL_GLOBALS_H