search for: go_write_export_data

Displaying 4 results from an estimated 4 matches for "go_write_export_data".

2011 Aug 16
2
[LLVMdev] Segmented Stacks: Pre-midterm work
...In order to support > LTO front-ends shouldn't do this anymore, but some (eg: java) still do. I had > a look at the GO front-end and I see this suspicious code: > > /* This is called by the Go frontend proper to add data to the > .go_export section. */ > > void > go_write_export_data (const char *bytes, unsigned int size) > { > static section* sec; > > if (sec == NULL) > { > gcc_assert (targetm_common.have_named_sections); > sec = get_section (".go_export", SECTION_DEBUG, NULL); > } > > switch_to_section...
2011 Aug 17
0
[LLVMdev] Segmented Stacks: Pre-midterm work
As far as I can see (after hand-tweaking the assembly generated for a simple example), there is no problem with the calling convention. Also, go_write_export_data only seems to generate to some sort of debug information (which does not look like DWARF). However, there seems to be some problem with how LLVM handles trampolines -- I'm currently trying find out what exactly the problem is. -- Sanjoy Das http://playingwithpointers.com
2011 Aug 16
0
[LLVMdev] Segmented Stacks: Pre-midterm work
...ery (and thereby bypassing dragonegg). In order to support LTO front-ends shouldn't do this anymore, but some (eg: java) still do. I had a look at the GO front-end and I see this suspicious code: /* This is called by the Go frontend proper to add data to the .go_export section. */ void go_write_export_data (const char *bytes, unsigned int size) { static section* sec; if (sec == NULL) { gcc_assert (targetm_common.have_named_sections); sec = get_section (".go_export", SECTION_DEBUG, NULL); } switch_to_section (sec); assemble_string (bytes, size); } So yo...
2011 Aug 15
4
[LLVMdev] Segmented Stacks: Pre-midterm work
Hi! I've been working on coroutines for some time, and it seems you were right - it makes much more sense to have regular C (and assembly) code for handling coroutines. For instance, I'd otherwise would have to make an assumption about the threading model the platform has (or assume there are no threads at all, which prevents me from allowing goroutine like ("run parallel till you