Find a file
Andrew Boie ef29812d51 nios2: support more global pointer scenarios
We now allow use of -mgpopt=global and -mgpopt=data. The 'global'
option is now the default instead of compiler-default local, expanding
global pointer usage to all small data in the system.

For systems where all RAM is less than 64K, the 'data' option may be
appropriate.

Some fixes had to be made to the system in order to get around some
issues:

* prep_c.c no longer uses fake linker variables to figure out the size
of data or BSS, as these gave the linker fits as it tried to compute
relative addresses to them.

* _k_task_ptr_idle is create by sysgen and placed in a special section.
Any small data in a special section needs to be declared extern
with __attribute__((section)) else the compiler will assume it's in
.sdata.

* same situation with extern references to k_pipe_t (fixed pipe_priv
test)

For legacy applications being ported to Nios II which do things that
freak out global pointer calculation, it can be disabled entirely.

Change-Id: I5eb86ee8aefb8e2fac49c5cdd104ee19cea23f6f
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-07-06 18:14:31 +00:00
.known-issues build: script to filter known issues 2016-07-01 21:53:44 +00:00
arch nios2: support more global pointer scenarios 2016-07-06 18:14:31 +00:00
boards usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
doc doc: revert unnamed union/struct workaround in favour of known-issues 2016-07-01 21:53:45 +00:00
drivers drivers: i2c: qmsi shim driver bug fix 2016-07-06 17:43:49 +00:00
ext ext qmsi: Update to QMSI 1.1-Beta 2016-07-01 13:43:02 -07:00
include nios2: support more global pointer scenarios 2016-07-06 18:14:31 +00:00
kernel nios2: support more global pointer scenarios 2016-07-06 18:14:31 +00:00
lib nios2: Kconfig: remove some unused config options 2016-06-10 15:22:42 +00:00
misc gdb-server: update call to uart_register_input() 2016-06-22 17:40:01 +00:00
net Bluetooth: L2CAP: Only call disconnected callback for connected channels 2016-07-06 12:08:53 +00:00
samples samples/static_lib: Linking with a static library 2016-07-01 00:39:20 +00:00
scripts build: script to filter known issues 2016-07-01 21:53:44 +00:00
tests nios2: support more global pointer scenarios 2016-07-06 18:14:31 +00:00
usb usb: Move LOW_BYTE and HIGH_BYTE to samples code 2016-06-30 17:51:58 +00:00
.checkpatch.conf checkpatch: decrease max line number to 80 2016-05-31 19:09:14 +00:00
.gitattributes First commit 2015-04-10 16:44:37 -07:00
.gitignore testcases: instruct git to ignore *log and outdir-* 2016-06-14 22:01:34 +00:00
.gitreview Add a .gitreview file 2016-02-20 14:25:01 +00:00
.mailmap mailmap: Add more entries for incomplete author information 2016-06-03 10:52:22 +00:00
Kbuild build: add more dependencies to build process 2016-05-20 18:25:19 +00:00
Kconfig kconfig: Do not put architecture in the title 2016-03-14 16:50:51 -04:00
Kconfig.zephyr usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
LICENSE add top level Apache 2.0 license file 2016-02-05 20:24:37 -05:00
MAINTAINERS build: script to filter known issues 2016-07-01 21:53:44 +00:00
Makefile usb: Add USB device core layer 2016-06-30 17:51:56 +00:00
Makefile.inc build: Fix application object files placement when building out of tree 2016-06-30 16:49:40 +00:00
zephyr-env.sh zephyr-env.sh: Add a note to indicate the required version of zsh 2016-03-18 22:01:19 +00:00