This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ /////////////////////////////////////////////////////////////////////////////// #include "board.h" /////////////////////////////////////////////////////////////////////////////// __attribute__((__section__(".eeprom"), used)) const int8_t eepromArray[16384]; eepromConfig_t eepromConfig; uint8_t execUpCount = 0; sensors_t sensors; heading_t heading; uint16_t timerValue; /////////////////////////////////////////////////////////////////////////////// int main(void) {
#ifdef DEBUG #define DBG(fmt...) printf(fmt) #else static inline int __attribute__ ((format (printf, 1, 2))) DBG( const char *fmt, ...) {return 0;} #endif BSS_STACK(4096); /* A buffer that may be edited by tools operating on a zImage binary so as to * edit the command line passed to vmlinux (by setting /chosen/bootargs). * The buffer is put in it's own section so that tools may locate it easier. */ static char cmdline[COMMAND_LINE_SIZE] __attribute__((__section__("__builtin_cmdline"))); static void prep_cmdline(void *chosen) { if (cmdline[0] == '\0') getprop(chosen, "bootargs", cmdline, COMMAND_LINE_SIZE-1); else setprop_str(chosen, "bootargs", cmdline); printf("cmdline: '%s'\n", cmdline); } static void ps3_console_write(const char *buf, int len) { }
*/ struct task_struct init_task = INIT_TASK(init_task); EXPORT_SYMBOL(init_task); /* * Initial thread structure. * * We need to make sure that this is 16384-byte aligned due to the * way process stacks are handled. This is done by having a special * "init_task" linker map entry.. */ union thread_union init_thread_union __attribute__((__section__(".data.init_task"))) = { INIT_THREAD_INFO(init_task) }; struct task_struct *alloc_task_struct(void) { return((struct task_struct *) __get_free_pages(GFP_KERNEL, CONFIG_KERNEL_STACK_ORDER)); } void unprotect_stack(unsigned long stack) { protect_memory(stack, (1 << CONFIG_KERNEL_STACK_ORDER) * PAGE_SIZE, 1, 1, 0, 1); } void free_task_struct(struct task_struct *task)
* This file defines all extra memory spaces that need to be included. * This file is automatically generated by PSoC Creator. * ******************************************************************************** * Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. ********************************************************************************/ #include "cytypes.h" #if defined(__GNUC__) || defined(__ARMCC_VERSION) __attribute__ ((__section__(".cyconfigecc"), used)) #elif defined(__ICCARM__) #pragma location=".cyconfigecc" #else #error "Unsupported toolchain" #endif const uint8 cy_meta_configecc[] = { 0x01u, 0x09u, 0x01u, 0x40u, 0x04u, 0x0Au, 0x01u, 0x40u, 0x01u, 0x0Bu, 0x01u, 0x40u, 0x01u, 0x15u, 0x01u, 0x40u, 0x01u, 0x1Bu, 0x01u, 0x40u, 0x02u, 0x44u, 0x01u, 0x40u, 0x01u, 0x45u, 0x01u, 0x40u, 0x03u, 0x46u, 0x01u, 0x40u, 0x03u, 0x47u, 0x01u, 0x40u, 0x02u, 0x48u, 0x01u, 0x40u, 0x01u, 0x49u, 0x01u, 0x40u, 0x01u, 0x4Cu, 0x01u, 0x40u, 0x02u, 0x4Du, 0x01u, 0x40u, 0xB5u, 0x02u, 0xB8u, 0x02u, 0xBEu, 0x01u, 0xD8u, 0x04u, 0xDFu, 0x01u, 0x1Du, 0x02u, 0xECu, 0x10u, 0xECu, 0x10u, 0x7Cu, 0x01u, 0xDEu, 0x01u,
#include <getopt.h> #include <stdio.h> #include <fcntl.h> #include <stdarg.h> #include <string.h> #include <unistd.h> #include <errno.h> #include "cryopid.h" #include "cpimage.h" #include "process.h" #include "stub.h" char tramp[100]; extern char tramp[] __attribute__((__section__((".tramp")))); static int image_fd, real_fd; int getpid_snippet = 0; /* check the presence of __getpid signature */ int verbosity = 0; int dump_only = 0; int action = ACTION_LOAD; int want_pid = 0; int do_pause = 0; int reforked = 0; int real_argc; char** real_argv; char** real_environ; extern char** environ; #ifdef USE_GTK extern char display_environ[80];
#include <asm/cacheflush.h> #include <asm/irq_handler.h> #include <asm/mmu_context.h> #include <asm/pgtable.h> #include <asm/pgalloc.h> #include <asm/processor.h> #include <asm/ptrace.h> #include <asm/cpu.h> #include <asm/time.h> #include <linux/err.h> /* * Anomaly notes: * 05000120 - we always define corelock as 32-bit integer in L2 */ struct corelock_slot corelock __attribute__ ((__section__(".l2.bss"))); #ifdef CONFIG_ICACHE_FLUSH_L1 unsigned long blackfin_iflush_l1_entry[NR_CPUS]; #endif struct blackfin_initial_pda __cpuinitdata initial_pda_coreb; enum ipi_message_type { BFIN_IPI_TIMER, BFIN_IPI_RESCHEDULE, BFIN_IPI_CALL_FUNC, BFIN_IPI_CALL_FUNC_SINGLE, BFIN_IPI_CPU_STOP, };
#include <linux/mm.h> #include <linux/sched.h> #include <asm/uaccess.h> #include <asm/pgtable.h> #include <asm/desc.h> static struct vm_area_struct init_mmap = INIT_MMAP; static struct fs_struct init_fs = INIT_FS; static struct file * init_fd_array[NR_OPEN] = { NULL, }; static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS; struct mm_struct init_mm = INIT_MM; /* * Initial task structure. * * We need to make sure that this is 8192-byte aligned due to the * way process stacks are handled. This is done by having a special * "init_task" linker map entry.. */ union task_union init_task_union __attribute__((__section__(".data.init_task"))) = { INIT_TASK };
* This file defines all extra memory spaces that need to be included. * This file is automatically generated by PSoC Creator. * ******************************************************************************** * Copyright (c) 2007-2015 Cypress Semiconductor. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. ********************************************************************************/ #include "cytypes.h" #if defined(__GNUC__) || defined(__ARMCC_VERSION) __attribute__ ((__section__(".cyloadablemeta"), used)) #elif defined(__ICCARM__) #pragma location=".cyloadablemeta" #else #error "Unsupported toolchain" #endif const uint8 cy_meta_loadable[] = { 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x5Cu, 0xD1u, 0x60u, 0x04u, 0x01u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u };
* This file defines all extra memory spaces that need to be included. * This file is automatically generated by PSoC Creator. * ******************************************************************************** * Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. ********************************************************************************/ #include "cytypes.h" #if defined(__GNUC__) || defined(__ARMCC_VERSION) __attribute__ ((__section__(".cyloadablemeta"), used)) #elif defined(__ICCARM__) #pragma location=".cyloadablemeta" #else #error "Unsupported toolchain" #endif const uint8 cy_meta_loadable[] = { 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u };
* (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ #include <runtime.h> static char heap[CONFIG_HEAP_SIZE] __attribute__((__used__, __section__(".heap"))); static struct runtime_t * __current_runtime = NULL; static void do_runtime_init(void) { static struct runtime_t rt; /* Set default runtime to current */ __current_runtime = &rt; /* Initial the default runtime */ memset(&rt, 0, sizeof(struct runtime_t)); rt.__pool = memory_pool_create((void *)heap, sizeof(heap)); rt.__errno = 0;
#include <asm/pgalloc.h> #include <asm/pgtable.h> #include <asm/tlb.h> #include <asm/pdc_chassis.h> #include <asm/mmzone.h> #include <asm/sections.h> extern int data_start; #if PT_NLEVELS == 3 /* NOTE: This layout exactly conforms to the hybrid L2/L3 page table layout * with the first pmd adjacent to the pgd and below it. gcc doesn't actually * guarantee that global objects will be laid out in memory in the same order * as the order of declaration, so put these in different sections and use * the linker script to order them. */ pmd_t pmd0[PTRS_PER_PMD] __attribute__ ((__section__ (".data..vm0.pmd"), aligned(PAGE_SIZE))); #endif pgd_t swapper_pg_dir[PTRS_PER_PGD] __attribute__ ((__section__ (".data..vm0.pgd"), aligned(PAGE_SIZE))); pte_t pg0[PT_INITIAL * PTRS_PER_PTE] __attribute__ ((__section__ (".data..vm0.pte"), aligned(PAGE_SIZE))); #ifdef CONFIG_DISCONTIGMEM struct node_map_data node_data[MAX_NUMNODES] __read_mostly; unsigned char pfnnid_map[PFNNID_MAP_MAX] __read_mostly; #endif static struct resource data_resource = { .name = "Kernel data", .flags = IORESOURCE_BUSY | IORESOURCE_MEM, };
*/ #define STEPS_PER_IN_X ((uint32_t) ((25.4 * STEPS_PER_MM_X) + 0.5)) #define STEPS_PER_IN_Y ((uint32_t) ((25.4 * STEPS_PER_MM_Y) + 0.5)) #define STEPS_PER_IN_Z ((uint32_t) ((25.4 * STEPS_PER_MM_Z) + 0.5)) #define STEPS_PER_IN_E ((uint32_t) ((25.4 * STEPS_PER_MM_E) + 0.5)) /// current or previous gcode word /// for working out what to do with data just received uint8_t last_field = 0; /// crude crc macro #define crc(a, b) (a ^ b) /// crude floating point data storage decfloat read_digit __attribute__ ((__section__ (".bss"))); /// this is where we store all the data for the current command before we work out what to do with it GCODE_COMMAND next_target __attribute__ ((__section__ (".bss"))); /* decfloat_to_int() is the weakest subject to variable overflow. For evaluation, we assume a build room of +-1000 mm and STEPS_PER_MM_x between 1.000 and 4096. Accordingly for metric units: df->mantissa: +-0..1048075 (20 bit - 500 for rounding) df->exponent: 0, 2, 3 or 4 (10 bit) multiplicand / denominator: 20..4194303 / 1000 (22 bit - 10 bit) or 0..4095 / 1 (12 bit - 0 bit) imperial units: df->mantissa: +-0..32267 (15 bit - 500 for rounding)
*/ #include <stdio.h> #include <errno.h> #include <stddef.h> #include <armv7m/system.h> #include <armv7m/vector.h> extern void irq_action(void); static struct isr_entry sw_isr_table[CONFIG_NUM_IRQS]; typedef void (*vect)(void); vect __attribute__((__section__(".isr_vector_cmsis"))) isr_vector_table[CONFIG_NUM_IRQS] = { [0 ...(CONFIG_NUM_IRQS - 1)] = irq_action, }; static inline int is_irq_valid(unsigned int irq) { if ((irq > CONFIG_NUM_IRQS) || (irq < 0)) { error_printk("invalid irq num\n"); return -EINVAL; } else return irq; } unsigned int vector_current_irq(void) {
#include <asm/system.h> #include <asm/paca.h> #include <asm/firmware.h> #include <asm/iseries/it_lp_queue.h> #include <asm/iseries/hv_lp_event.h> #include <asm/iseries/hv_call_event.h> #include "it_lp_naca.h" /* * The LpQueue is used to pass event data from the hypervisor to * the partition. This is where I/O interrupt events are communicated. * * It is written to by the hypervisor so cannot end up in the BSS. */ struct hvlpevent_queue hvlpevent_queue __attribute__((__section__(".data"))); DEFINE_PER_CPU(unsigned long[HvLpEvent_Type_NumTypes], hvlpevent_counts); static char *event_types[HvLpEvent_Type_NumTypes] = { "Hypervisor", "Machine Facilities", "Session Manager", "SPD I/O", "Virtual Bus", "PCI I/O", "RIO I/O", "Virtual Lan", "Virtual I/O" };
* Author: Waqas */ #include <string.h> #include "Salt.h" #include "sha256.h" #include "pbkdf2.h" #include "aes_example.h" #include "sha2.h" #include "tc_task.h" #include "flashc.h" #include "crc.h" //volatile uint32_t unlock_password[8] = {0}; __attribute__((__section__(".flash_nvram"))) stored_values_t Stored_values_flash; volatile stored_values_t Stored_values_ram; volatile uint32_t temp_password[8] = {0}; volatile uint32_t temp_password1[8] = {0}; //volatile uint32_t password_block [32] = {0}; volatile uint32_t *pass_code; volatile bool device_unlocked = false; volatile uint8_t passcode_byte_index = 0; volatile unsigned long int rseed = 0; volatile uint256_t var_Hkey; volatile uint256_t var_R; volatile uint256_t var_T; volatile uint32_t var_W = 0xFFFFFFFF;
/* This is the default cmdline that will be given to the user at boot time.. * If none was specified at compile time, we'll give it one that should work. * -- Tom */ #ifdef CONFIG_CMDLINE_BOOL char compiled_string[] = CONFIG_CMDLINE; #endif char ramroot_string[] = "root=/dev/ram"; char netroot_string[] = "root=/dev/nfs rw ip=on"; /* Serial port to use. */ unsigned long com_port; /* We need to make sure that this is before the images to ensure * that it's in a mapped location. - Tom */ bd_t hold_resid_buf __attribute__ ((__section__ (".data.boot"))); bd_t *hold_residual = &hold_resid_buf; extern unsigned long serial_init(int chan, bd_t *bp); extern void serial_close(unsigned long com_port); extern unsigned long start; extern void flush_instruction_cache(void); extern void gunzip(void *, int, unsigned char *, int *); extern void embed_config(bd_t **bp); unsigned long load_kernel(unsigned long load_addr, int num_words, unsigned long cksum, bd_t *bp) { char *cp, ch; int timer = 0, zimage_size; unsigned long initrd_size;
memory_end &= PAGE_MASK; memory_end_set = 1; return 0; } early_param("mem", early_parse_mem); static int __init parse_vmalloc(char *arg) { if (!arg) return -EINVAL; VMALLOC_END = (memparse(arg, &arg) + PAGE_SIZE - 1) & PAGE_MASK; return 0; } early_param("vmalloc", parse_vmalloc); void *restart_stack __attribute__((__section__(".data"))); static void __init setup_lowcore(void) { struct lowcore *lc; /* * Setup lowcore for boot cpu */ BUILD_BUG_ON(sizeof(struct lowcore) != LC_PAGES * 4096); lc = __alloc_bootmem_low(LC_PAGES * PAGE_SIZE, LC_PAGES * PAGE_SIZE, 0); lc->restart_psw.mask = PSW_KERNEL_BITS; lc->restart_psw.addr = PSW_ADDR_AMODE | (unsigned long) restart_int_handler; lc->external_new_psw.mask = PSW_KERNEL_BITS | PSW_MASK_DAT | PSW_MASK_MCHECK;
#ifndef ABS #define ABS(v) (((v) >= 0)?(v):(-(v))) #endif /* step timeout */ uint8_t steptimeout = 0; /* position tracking */ TARGET startpoint __attribute__ ((__section__ (".bss"))); TARGET current_position __attribute__ ((__section__ (".bss"))); /* utility functions */ // courtesy of http://www.flipcode.com/archives/Fast_Approximate_Distance_Functions.shtml uint32_t approx_distance( uint32_t dx, uint32_t dy ) { uint32_t min, max, approx; if ( dx < dy ) { min = dx; max = dy;
#include <sched.h> #include <mm.h> #include <io.h> #include <utils.h> #include <libc.h> #include <errno.h> enum schedulling_p politica = RR; // apliquem round robin struct task_struct *idle_task; int pidMesNou = 0; union task_union task[NR_TASKS] __attribute__((__section__(".data.task"))); LIST_HEAD(freeQueue); LIST_HEAD(readyQueue); //#if 0 struct task_struct *list_head_to_task_struct(struct list_head *l) { return list_entry(l, struct task_struct, entry); } //#endif extern struct list_head blocked; /* get_DIR - Returns the Page Directory address for task 't' */
#include <asm/barebox-arm.h> #include <asm/barebox-arm-head.h> #include <asm-generic/memory_layout.h> #include <asm/sections.h> #include <asm/pgtable.h> #include <asm/cache.h> #include <debug_ll.h> #include "mmu-early.h" unsigned long free_mem_ptr; unsigned long free_mem_end_ptr; static int __attribute__((__used__)) __attribute__((__section__(".image_end"))) __image_end_dummy = 0xdeadbeef; static void noinline uncompress(uint32_t membase, uint32_t memsize, uint32_t boarddata) { uint32_t offset; uint32_t pg_len; void __noreturn (*barebox)(uint32_t, uint32_t, uint32_t); uint32_t endmem = membase + memsize; unsigned long barebox_base; uint32_t *ptr; void *pg_start; endmem -= STACK_SIZE; /* stack */
// Allocation for NB_CONFIG_MPU_ENTRIES DMPU entries mpu_entry_t dmpu_entries[NB_CONFIG_MPU_ENTRIES]; // Exception state enum exception_status exception_state = NO_EXCEPTION; #if defined (__GNUC__) /** * \brief Function with restricted access * * Forbidden_access_func() is placed in the section .ForbiddenText. This region * is configured as non-executable in configure_memory_area(). * .ForbiddenText is a section created for this example, placed in a well-known * location in Flash. See the linker script bundled with the example. */ __attribute__ ((__naked__, __section__(".ForbiddenText"))) #elif __ICCAVR32__ #pragma shadow_registers = full #pragma location="FORBIDDENTEXT" #endif static void forbidden_access_func(void) /*@"FORBIDDENTEXT"*/ { #if defined (__GNUC__) __asm__ __volatile__ ( ".balign 0x4\n\t" // We'll get an MPU exception here. "nop\n\t" /* * This is setting the PC to the instruction following the call of * forbidden_access_func. */
/* { dg-do compile } */ /* { dg-require-effective-target named_sections } */ /* { dg-final { scan-assembler "mysection" } } */ extern char foo; char foo __attribute__ ((__section__(".mysection")));
#define FIRSTRUN_KEY 0x22 typedef const struct { tele_script_t script[10]; tele_pattern_t patterns[4]; char text[32][SCENE_SLOTS]; } tele_scene_t; typedef const struct { tele_scene_t s[SCENE_SLOTS]; uint8_t scene; uint8_t fresh; } nvram_data_t; // NVRAM data structure located in the flash array. __attribute__((__section__(".flash_nvram"))) static nvram_data_t f; #define M_LIVE 0 #define M_EDIT 1 #define M_TRACK 2 #define M_PRESET_W 3 #define M_PRESET_R 4 #define M_HELP 5 uint8_t mode; #define R_PRESET (1<<0) #define R_INPUT (1<<1)
* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; version 2 of the License. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * * Contributors: * Tuukka Tikkanen <*****@*****.**> * */ #include "report_ops.h" #include "trace_ops.h" #include <stddef.h> const struct trace_ops __attribute__((__used__)) __attribute__ ((__section__ ("__trace_ops"))) *trace_ops_head = NULL; const struct report_ops __attribute__((__used__)) __attribute__ ((__section__ ("__report_ops"))) *report_ops_head = NULL;
strcat(command_line, " "); strcat(command_line, arg); } /* * These fields are initialized at boot time and not changed. * XXX This structure is used only in the non-SMP case. Maybe this * should be moved to smp.c. */ struct cpuinfo_um boot_cpu_data = { .loops_per_jiffy = 0, .ipi_pipe = { -1, -1 } }; union thread_union cpu0_irqstack __attribute__((__section__(".data..init_irqstack"))) = { .thread_info = INIT_THREAD_INFO(init_task) }; /* Changed in setup_arch, which is called in early boot */ static char host_info[(__NEW_UTS_LEN + 1) * 5]; static int show_cpuinfo(struct seq_file *m, void *v) { int index = 0; seq_printf(m, "processor\t: %d\n", index); seq_printf(m, "vendor_id\t: User Mode Linux\n"); seq_printf(m, "model name\t: UML\n"); seq_printf(m, "mode\t\t: skas\n"); seq_printf(m, "host\t\t: %s\n", host_info); seq_printf(m, "bogomips\t: %lu.%02lu\n\n",
/* * Copyright (C) 2004 Jeff Dike ([email protected]) * Licensed under the GPL */ #include <signal.h> #include <sys/select.h> /* The only way I can see to get sigset_t */ #include <asm/unistd.h> #include "uml-config.h" #include "sysdep/stub.h" #include "sysdep/sigcontext.h" #include "sysdep/faultinfo.h" void __attribute__ ((__section__ (".__syscall_stub"))) stub_segv_handler(int sig) { struct sigcontext *sc = (struct sigcontext *) (&sig + 1); int pid; GET_FAULTINFO_FROM_SC(*((struct faultinfo *) UML_CONFIG_STUB_DATA), sc); pid = stub_syscall0(__NR_getpid); stub_syscall2(__NR_kill, pid, SIGUSR1); /* Load pointer to sigcontext into esp, since we need to leave * the stack in its original form when we do the sigreturn here, by * hand. */ __asm__ __volatile__("mov %0,%%esp ; movl %1, %%eax ; " "int $0x80" : : "a" (sc), "g" (__NR_sigreturn));
#include <string.h> #include <avr/interrupt.h> #include "config.h" #include "timer.h" #include "serial.h" #include "sermsg.h" #include "temp.h" #include "delay.h" #include "sersendf.h" #include "clock.h" uint8_t mb_head = 0; uint8_t mb_tail = 0; DDA movebuffer[MOVEBUFFER_SIZE] __attribute__ ((__section__ (".bss"))); uint8_t queue_full() { return (((mb_tail - mb_head - 1) & (MOVEBUFFER_SIZE - 1)) == 0)?255:0; } uint8_t queue_empty() { return ((mb_tail == mb_head) && (movebuffer[mb_tail].live == 0))?255:0; } // ------------------------------------------------------- // This is the one function called by the timer interrupt. // It calls a few other functions, though. // ------------------------------------------------------- void queue_step() { // do our next step
#include <asm/traps.h> #include "cpu/mcheck/mce.h" asmlinkage int system_call(void); /* Do we ignore FPU interrupts ? */ char ignore_fpu_irq; /* * The IDT has to be page-aligned to simplify the Pentium * F0 0F bug workaround.. We have a special link segment * for this. */ gate_desc idt_table[256] __attribute__((__section__(".data.idt"))) = { { { { 0, 0 } } }, }; #endif DECLARE_BITMAP(used_vectors, NR_VECTORS); EXPORT_SYMBOL_GPL(used_vectors); static int ignore_nmis; static inline void conditional_sti(struct pt_regs *regs) { if (regs->flags & X86_EFLAGS_IF) local_irq_enable(); } static inline void preempt_conditional_sti(struct pt_regs *regs) {
//__FBSDID("$FreeBSD$"); /* * See s_erf.c for complete comments. * * Converted to long double by Steven G. Kargl. */ #include <float.h> #include "fpmath.h" #include "math.h" #include "math_private.h" /* XXX Prevent compilers from erroneously constant folding these: */ static const volatile long double tiny __attribute__ ((__section__(".rodata"))) = 0x1p-10000L; static const double half= 0.5, one = 1, two = 2; /* * In the domain [0, 2**-40], only the first term in the power series * expansion of erf(x) is used. The magnitude of the first neglected * terms is less than 2**-120. */ static const long double efx = 1.28379167095512573896158903121545167e-01L, /* 0xecbff6a7, 0x481dd788, 0xb64d21a8, 0xeb06fc3f */ efx8 = 1.02703333676410059116927122497236133e+00L, /* 0xecbff6a7, 0x481dd788, 0xb64d21a8, 0xeb06ff3f */ /* * Domain [0, 0.84375], range ~[-1.919e-38, 1.919e-38]:
(u64)system_call_iSeries, /* 0xc00 System Call */ (u64)single_step_iSeries, /* 0xd00 Single Step */ (u64)trap_0e_iSeries, /* 0xe00 Trap 0E */ (u64)performance_monitor_iSeries,/* 0xf00 Performance Monitor */ 0, /* int 0x1000 */ 0, /* int 0x1010 */ 0, /* int 0x1020 CPU ctls */ (u64)hardware_interrupt_iSeries, /* SC Ret Hdlr */ (u64)data_access_slb_iSeries, /* 0x380 D-SLB */ (u64)instruction_access_slb_iSeries /* 0x480 I-SLB */ } }; EXPORT_SYMBOL(itLpNaca); /* May be filled in by the hypervisor so cannot end up in the BSS */ struct ItIplParmsReal xItIplParmsReal __attribute__((__section__(".data"))); /* May be filled in by the hypervisor so cannot end up in the BSS */ struct ItExtVpdPanel xItExtVpdPanel __attribute__((__section__(".data"))); EXPORT_SYMBOL(xItExtVpdPanel); #define maxPhysicalProcessors 32 struct IoHriProcessorVpd xIoHriProcessorVpd[maxPhysicalProcessors] = { { .xInstCacheOperandSize = 32, .xDataCacheOperandSize = 32, .xProcFreq = 50000000, .xTimeBaseFreq = 50000000, .xPVR = 0x3600 }