{
static Integer_type* abstract_type;
if (abstract_type == NULL)
- abstract_type = new Integer_type(true, false, INT_TYPE_SIZE,
- RUNTIME_TYPE_KIND_INT);
+ {
+ Type* int_type = Type::lookup_integer_type("int");
+ abstract_type = new Integer_type(true, false,
+ int_type->integer_type()->bits(),
+ RUNTIME_TYPE_KIND_INT);
+ }
return abstract_type;
}
We deliberately don't split the stack in case it does call the
library function, which shouldn't need much stack space. */
-int IndexByte (struct __go_open_array, char)
+intgo IndexByte (struct __go_open_array, char)
asm ("bytes.IndexByte")
__attribute__ ((no_split_stack));
-int
+intgo
IndexByte (struct __go_open_array s, char b)
{
char *p;
#include <syslog.h>
+#include "runtime.h"
+
/* We need to use a C function to call the syslog function, because we
can't represent a C varargs function in Go. */
-void syslog_c(int, const char*)
+void syslog_c(intgo, const char*)
asm ("log_syslog.syslog_c");
void
-syslog_c (int priority, const char *msg)
+syslog_c (intgo priority, const char *msg)
{
syslog (priority, "%s", msg);
}
#include "arch.h"
#include "malloc.h"
-String Signame (int sig) asm ("syscall.Signame");
+String Signame (intgo sig) asm ("syscall.Signame");
String
-Signame (int sig)
+Signame (intgo sig)
{
const char* s = NULL;
char buf[100];
if (s == NULL)
{
- snprintf(buf, sizeof buf, "signal %d", sig);
+ snprintf(buf, sizeof buf, "signal %ld", (long) sig);
s = buf;
}
len = __builtin_strlen (s);
static void LostProfileData(void) {
}
-extern void runtime_SetCPUProfileRate(int32)
+extern void runtime_SetCPUProfileRate(intgo)
__asm__("runtime.SetCPUProfileRate");
// SetCPUProfileRate sets the CPU profiling rate.
struct __go_map *
__go_new_map (const struct __go_map_descriptor *descriptor, uintptr_t entries)
{
- intgo ientries;
+ int32 ientries;
struct __go_map *ret;
- ientries = (intgo) entries;
+ /* The master library limits map entries to int32, so we do too. */
+ ientries = (int32) entries;
if (ientries < 0 || (uintptr_t) ientries != entries)
runtime_panicstring ("map size out of range");
characters used from STR. */
int
-__go_get_rune (const unsigned char *str, size_t len, int *rune)
+__go_get_rune (const unsigned char *str, size_t len, int32 *rune)
{
int c, c1, c2, c3, l;
return __go_strings_equal (*ps1, *ps2);
}
-extern int __go_get_rune (const unsigned char *, size_t, int *);
+extern int __go_get_rune (const unsigned char *, size_t, int32 *);
#endif /* !defined(LIBGO_GO_STRING_H) */
{
String fn;
String file;
- int line;
+ intgo line;
if (__go_file_line (pcbuf[i], &fn, &file, &line)
&& runtime_showframe (fn.str))
{
runtime_printf ("%S\n", fn);
- runtime_printf ("\t%S:%d\n", file, line);
+ runtime_printf ("\t%S:%D\n", file, (int64) line);
}
}
}
if(g != nil && g->gopc != 0 && g->goid != 1) {
String fn;
String file;
- int line;
+ intgo line;
if(__go_file_line(g->gopc - 1, &fn, &file, &line)) {
runtime_printf("created by %S\n", fn);
- runtime_printf("\t%S:%d\n", file, line);
+ runtime_printf("\t%S:%D\n", file, (int64) line);
}
}
}
/*
* common functions and data
*/
-int32 runtime_findnull(const byte*);
+intgo runtime_findnull(const byte*);
void runtime_dump(byte*, int32);
/*
struct backtrace_state;
extern struct backtrace_state *__go_get_backtrace_state(void);
-extern _Bool __go_file_line(uintptr, String*, String*, int *);
+extern _Bool __go_file_line(uintptr, String*, String*, intgo *);
extern byte* runtime_progname();
int32 getproccount(void);
out:
}
-func stringiter2(s String, k int) (retk int, retv int) {
+func stringiter2(s String, k int) (retk int, retv int32) {
if(k >= s.len) {
// retk=0 is end of iteration
retk = 0;